unity 1.1.0.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,2823 @@
1
+ <?xml version="1.0"?>
2
+ <doc>
3
+ <assembly>
4
+ <name>Microsoft.Practices.ObjectBuilder2</name>
5
+ </assembly>
6
+ <members>
7
+ <member name="T:Microsoft.Practices.ObjectBuilder2.IBuildPlanPolicy">
8
+ <summary>
9
+ A build plan is an object that, when invoked, will create a new object
10
+ or fill in a given existing one. It encapsulates all the information
11
+ gathered by the strategies to construct a particular object.
12
+ </summary>
13
+ </member>
14
+ <member name="T:Microsoft.Practices.ObjectBuilder2.IBuilderPolicy">
15
+ <summary>
16
+ Represents a builder policy interface. Since there are no fixed requirements
17
+ for policies, it acts as a marker interface from which to derive all other
18
+ policy interfaces.
19
+ </summary>
20
+ </member>
21
+ <member name="M:Microsoft.Practices.ObjectBuilder2.IBuildPlanPolicy.BuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
22
+ <summary>
23
+ Creates an instance of this build plan's type, or fills
24
+ in the existing type if passed in.
25
+ </summary>
26
+ <param name="context">Context used to build up the object.</param>
27
+ </member>
28
+ <member name="T:Microsoft.Practices.ObjectBuilder2.DynamicMethodPropertySetterStrategy">
29
+ <summary>
30
+ A <see cref="T:Microsoft.Practices.ObjectBuilder2.BuilderStrategy"/> that generates IL to resolve properties
31
+ on an object being built.
32
+ </summary>
33
+ </member>
34
+ <member name="T:Microsoft.Practices.ObjectBuilder2.BuilderStrategy">
35
+ <summary>
36
+ Represents a strategy in the <see cref="T:Microsoft.Practices.ObjectBuilder2.IBuilder"/>'s chain of responsibility.
37
+ Strategies are required to support both BuildUp and TearDown.
38
+ </summary>
39
+ </member>
40
+ <member name="T:Microsoft.Practices.ObjectBuilder2.IBuilderStrategy">
41
+ <summary>
42
+ Represents a strategy in the <see cref="T:Microsoft.Practices.ObjectBuilder2.IBuilder"/>'s chain of responsibility.
43
+ Strategies are required to support both BuildUp and TearDown. Although you
44
+ can implement this interface directly, you may also choose to use
45
+ <see cref="T:Microsoft.Practices.ObjectBuilder2.BuilderStrategy"/> as the base class for your strategies, as
46
+ this class provides useful helper methods and makes support BuildUp and TearDown
47
+ optional.
48
+ </summary>
49
+ </member>
50
+ <member name="M:Microsoft.Practices.ObjectBuilder2.IBuilderStrategy.PreBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
51
+ <summary>
52
+ Called during the chain of responsibility for a build operation. The
53
+ PreBuildUp method is called when the chain is being executed in the
54
+ forward direction.
55
+ </summary>
56
+ <param name="context">Context of the build operation.</param>
57
+ </member>
58
+ <member name="M:Microsoft.Practices.ObjectBuilder2.IBuilderStrategy.PostBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
59
+ <summary>
60
+ Called during the chain of responsibility for a build operation. The
61
+ PostBuildUp method is called when the chain has finished the PreBuildUp
62
+ phase and executes in reverse order from the PreBuildUp calls.
63
+ </summary>
64
+ <param name="context">Context of the build operation.</param>
65
+ </member>
66
+ <member name="M:Microsoft.Practices.ObjectBuilder2.IBuilderStrategy.PreTearDown(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
67
+ <summary>
68
+ Called during the chain of responsibility for a teardown operation. The
69
+ PreTearDown method is called when the chain is being executed in the
70
+ forward direction.
71
+ </summary>
72
+ <param name="context">Context of the teardown operation.</param>
73
+ </member>
74
+ <member name="M:Microsoft.Practices.ObjectBuilder2.IBuilderStrategy.PostTearDown(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
75
+ <summary>
76
+ Called during the chain of responsibility for a teardown operation. The
77
+ PostTearDown method is called when the chain has finished the PreTearDown
78
+ phase and executes in reverse order from the PreTearDown calls.
79
+ </summary>
80
+ <param name="context"></param>
81
+ </member>
82
+ <member name="M:Microsoft.Practices.ObjectBuilder2.BuilderStrategy.PreBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
83
+ <summary>
84
+ Called during the chain of responsibility for a build operation. The
85
+ PreBuildUp method is called when the chain is being executed in the
86
+ forward direction.
87
+ </summary>
88
+ <param name="context">Context of the build operation.</param>
89
+ </member>
90
+ <member name="M:Microsoft.Practices.ObjectBuilder2.BuilderStrategy.PostBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
91
+ <summary>
92
+ Called during the chain of responsibility for a build operation. The
93
+ PostBuildUp method is called when the chain has finished the PreBuildUp
94
+ phase and executes in reverse order from the PreBuildUp calls.
95
+ </summary>
96
+ <param name="context">Context of the build operation.</param>
97
+ </member>
98
+ <member name="M:Microsoft.Practices.ObjectBuilder2.BuilderStrategy.PreTearDown(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
99
+ <summary>
100
+ Called during the chain of responsibility for a teardown operation. The
101
+ PreTearDown method is called when the chain is being executed in the
102
+ forward direction.
103
+ </summary>
104
+ <param name="context">Context of the teardown operation.</param>
105
+ </member>
106
+ <member name="M:Microsoft.Practices.ObjectBuilder2.BuilderStrategy.PostTearDown(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
107
+ <summary>
108
+ Called during the chain of responsibility for a teardown operation. The
109
+ PostTearDown method is called when the chain has finished the PreTearDown
110
+ phase and executes in reverse order from the PreTearDown calls.
111
+ </summary>
112
+ <param name="context"></param>
113
+ </member>
114
+ <member name="M:Microsoft.Practices.ObjectBuilder2.DynamicMethodPropertySetterStrategy.PreBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
115
+ <summary>
116
+ Called during the chain of responsibility for a build operation.
117
+ </summary>
118
+ <param name="context">The context for the operation.</param>
119
+ </member>
120
+ <member name="M:Microsoft.Practices.ObjectBuilder2.DynamicMethodPropertySetterStrategy.ThrowOnFailedPropertyValueResolution(System.Exception,System.String)">
121
+ <summary>
122
+ A helper method called by the generated IL to throw an exception if a property's
123
+ value cannot be resolved.
124
+ </summary>
125
+ <param name="inner">The actual exception that caused the resolution to fail.</param>
126
+ <param name="propertyName">Name of the property that didn't resolve.</param>
127
+ </member>
128
+ <member name="T:Microsoft.Practices.ObjectBuilder2.DynamicBuildPlanGenerationContext">
129
+ <summary>
130
+ This object tracks the current state of the build plan generation,
131
+ accumulates the IL, provides the preamble &amp; postamble for the dynamic
132
+ method, and tracks things like local variables in the generated IL
133
+ so that they can be reused across IL generation strategies.
134
+ </summary>
135
+ </member>
136
+ <member name="M:Microsoft.Practices.ObjectBuilder2.DynamicBuildPlanGenerationContext.#ctor(System.Type)">
137
+ <summary>
138
+ Create a <see cref="T:Microsoft.Practices.ObjectBuilder2.DynamicBuildPlanGenerationContext"/> that is initialized
139
+ to handle creation of a dynamic method to build the given type.
140
+ </summary>
141
+ <param name="typeToBuild">Type that we're trying to create a build plan for.</param>
142
+ </member>
143
+ <member name="M:Microsoft.Practices.ObjectBuilder2.DynamicBuildPlanGenerationContext.GetBuildMethod">
144
+ <summary>
145
+ Completes generation of the dynamic method and returns the
146
+ generated dynamic method delegate.
147
+ </summary>
148
+ <returns>The created <see cref="T:Microsoft.Practices.ObjectBuilder2.DynamicBuildPlanMethod"/></returns>
149
+ </member>
150
+ <member name="M:Microsoft.Practices.ObjectBuilder2.DynamicBuildPlanGenerationContext.EmitLoadContext">
151
+ <summary>
152
+ Emit the IL to put the build context on top of the IL stack.
153
+ </summary>
154
+ </member>
155
+ <member name="M:Microsoft.Practices.ObjectBuilder2.DynamicBuildPlanGenerationContext.EmitLoadBuildKey">
156
+ <summary>
157
+ Emit the IL to put the current build key on top of the IL stack.
158
+ </summary>
159
+ </member>
160
+ <member name="M:Microsoft.Practices.ObjectBuilder2.DynamicBuildPlanGenerationContext.EmitLoadExisting">
161
+ <summary>
162
+ Emit the IL to put the current "existing" object on the top of the IL stack.
163
+ </summary>
164
+ </member>
165
+ <member name="M:Microsoft.Practices.ObjectBuilder2.DynamicBuildPlanGenerationContext.EmitStoreExisting">
166
+ <summary>
167
+ Emit the IL to make the top of the IL stack our current "existing" object.
168
+ </summary>
169
+ </member>
170
+ <member name="M:Microsoft.Practices.ObjectBuilder2.DynamicBuildPlanGenerationContext.EmitLoadTypeOnStack(System.Type)">
171
+ <summary>
172
+ Emit the IL to load the given <see cref="T:System.Type"/> object onto the top of the IL stack.
173
+ </summary>
174
+ <param name="t">Type to load on the stack.</param>
175
+ </member>
176
+ <member name="M:Microsoft.Practices.ObjectBuilder2.DynamicBuildPlanGenerationContext.EmitResolveDependency(System.Type,System.String)">
177
+ <summary>
178
+ Emit the IL needed to look up an <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/> and
179
+ call it to get a value.
180
+ </summary>
181
+ <param name="dependencyType">Type of the dependency to resolve.</param>
182
+ <param name="key">Key to look up the policy by.</param>
183
+ </member>
184
+ <member name="M:Microsoft.Practices.ObjectBuilder2.DynamicBuildPlanGenerationContext.GetPropertyGetter``2(System.String)">
185
+ <summary>
186
+ A reflection helper method to make it easier to grab a property getter
187
+ <see cref="T:System.Reflection.MethodInfo"/> for the given property.
188
+ </summary>
189
+ <typeparam name="TImplementor">Type that implements the property we want.</typeparam>
190
+ <typeparam name="TProperty">Type of the property.</typeparam>
191
+ <param name="name">Name of the property.</param>
192
+ <returns>The property getter's <see cref="T:System.Reflection.MethodInfo"/>.</returns>
193
+ </member>
194
+ <member name="M:Microsoft.Practices.ObjectBuilder2.DynamicBuildPlanGenerationContext.GetMethodInfo``1(System.String,System.Type[])">
195
+ <summary>
196
+ A reflection helper method that makes it easier to grab a <see cref="T:System.Reflection.MethodInfo"/>
197
+ for a method.
198
+ </summary>
199
+ <typeparam name="TImplementor">Type that implements the method we want.</typeparam>
200
+ <param name="name">Name of the method.</param>
201
+ <param name="argumentTypes">Types of arguments to the method.</param>
202
+ <returns>The method's <see cref="T:System.Reflection.MethodInfo"/>.</returns>
203
+ </member>
204
+ <member name="P:Microsoft.Practices.ObjectBuilder2.DynamicBuildPlanGenerationContext.IL">
205
+ <summary>
206
+ The underlying <see cref="T:System.Reflection.Emit.ILGenerator"/> that can be used to
207
+ emit IL into the generated dynamic method.
208
+ </summary>
209
+ </member>
210
+ <member name="P:Microsoft.Practices.ObjectBuilder2.DynamicBuildPlanGenerationContext.TypeToBuild">
211
+ <summary>
212
+ The type we're currently creating the method to build.
213
+ </summary>
214
+ </member>
215
+ <member name="T:Microsoft.Practices.ObjectBuilder2.DependencyMissingException">
216
+ <summary>
217
+ Represents that a dependency could not be resolved.
218
+ </summary>
219
+ </member>
220
+ <member name="M:Microsoft.Practices.ObjectBuilder2.DependencyMissingException.#ctor">
221
+ <summary>
222
+ Initializes a new instance of the <see cref="T:Microsoft.Practices.ObjectBuilder2.DependencyMissingException"/> class with no extra information.
223
+ </summary>
224
+ </member>
225
+ <member name="M:Microsoft.Practices.ObjectBuilder2.DependencyMissingException.#ctor(System.String)">
226
+ <summary>
227
+ Initializes a new instance of the <see cref="T:Microsoft.Practices.ObjectBuilder2.DependencyMissingException"/> class with the given message.
228
+ </summary>
229
+ <param name="message">Some random message.</param>
230
+ </member>
231
+ <member name="M:Microsoft.Practices.ObjectBuilder2.DependencyMissingException.#ctor(System.String,System.Exception)">
232
+ <summary>
233
+ Initialize a new instance of the <see cref="T:Microsoft.Practices.ObjectBuilder2.DependencyMissingException"/> class with the given
234
+ message and inner exception.
235
+ </summary>
236
+ <param name="message">Some random message</param>
237
+ <param name="innerException">Inner exception.</param>
238
+ </member>
239
+ <member name="M:Microsoft.Practices.ObjectBuilder2.DependencyMissingException.#ctor(System.Object)">
240
+ <summary>
241
+ Initializes a new instance of the <see cref="T:Microsoft.Practices.ObjectBuilder2.DependencyMissingException"/> class with the build key of the object begin built.
242
+ </summary>
243
+ <param name="buildKey">The build key of the object begin built.</param>
244
+ </member>
245
+ <member name="M:Microsoft.Practices.ObjectBuilder2.DependencyMissingException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
246
+ <summary>
247
+ Initializes a new instance of the <see cref="T:Microsoft.Practices.ObjectBuilder2.DependencyMissingException"/> class with serialized data.
248
+ </summary>
249
+ <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the exception being thrown.</param>
250
+ <param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the source or destination. </param>
251
+ </member>
252
+ <member name="T:Microsoft.Practices.ObjectBuilder2.PropertySelectorBase`1">
253
+ <summary>
254
+ Base class that provides an implementation of <see cref="T:Microsoft.Practices.ObjectBuilder2.IPropertySelectorPolicy"/>
255
+ which lets you override how the parameter resolvers are created.
256
+ </summary>
257
+ </member>
258
+ <member name="T:Microsoft.Practices.ObjectBuilder2.IPropertySelectorPolicy">
259
+ <summary>
260
+ An <see cref="T:Microsoft.Practices.ObjectBuilder2.IBuilderPolicy"/> that returns a sequence
261
+ of properties that should be injected for the given type.
262
+ </summary>
263
+ </member>
264
+ <member name="M:Microsoft.Practices.ObjectBuilder2.IPropertySelectorPolicy.SelectProperties(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
265
+ <summary>
266
+ Returns sequence of properties on the given type that
267
+ should be set as part of building that object.
268
+ </summary>
269
+ <param name="context">Current build context.</param>
270
+ <returns>Sequence of <see cref="T:System.Reflection.PropertyInfo"/> objects
271
+ that contain the properties to set.</returns>
272
+ </member>
273
+ <member name="M:Microsoft.Practices.ObjectBuilder2.PropertySelectorBase`1.SelectProperties(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
274
+ <summary>
275
+ Returns sequence of properties on the given type that
276
+ should be set as part of building that object.
277
+ </summary>
278
+ <param name="context">current build context.</param>
279
+ <returns>Sequence of <see cref="T:System.Reflection.PropertyInfo"/> objects
280
+ that contain the properties to set.</returns>
281
+ </member>
282
+ <member name="M:Microsoft.Practices.ObjectBuilder2.PropertySelectorBase`1.CreateResolver(System.Reflection.PropertyInfo)">
283
+ <summary>
284
+ Create a <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/> for the given
285
+ property.
286
+ </summary>
287
+ <param name="property">Property to create resolver for.</param>
288
+ <returns>The resolver object.</returns>
289
+ </member>
290
+ <member name="T:Microsoft.Practices.ObjectBuilder2.SelectedMemberWithParameters">
291
+ <summary>
292
+ Base class for return of selector policies that need
293
+ to keep track of a set of parameter keys.
294
+ </summary>
295
+ </member>
296
+ <member name="M:Microsoft.Practices.ObjectBuilder2.SelectedMemberWithParameters.AddParameterKey(System.String)">
297
+ <summary>
298
+ Add a new parameter key to this object. Keys are assumed
299
+ to be in the order of the parameters to the constructor.
300
+ </summary>
301
+ <param name="newKey">Key for the next parameter to look up.</param>
302
+ </member>
303
+ <member name="M:Microsoft.Practices.ObjectBuilder2.SelectedMemberWithParameters.GetParameterKeys">
304
+ <summary>
305
+ The set of keys for the constructor parameters.
306
+ </summary>
307
+ </member>
308
+ <member name="T:Microsoft.Practices.ObjectBuilder2.SelectedMemberWithParameters`1">
309
+ <summary>
310
+ Base class for return values from selector policies that
311
+ return a memberinfo of some sort plus a list of parameter
312
+ keys to look up the parameter resolvers.
313
+ </summary>
314
+ </member>
315
+ <member name="M:Microsoft.Practices.ObjectBuilder2.SelectedMemberWithParameters`1.#ctor(`0)">
316
+ <summary>
317
+ Construct a new <see cref="T:Microsoft.Practices.ObjectBuilder2.SelectedMemberWithParameters`1"/>, storing
318
+ the given member info.
319
+ </summary>
320
+ <param name="memberInfo">Member info to store.</param>
321
+ </member>
322
+ <member name="P:Microsoft.Practices.ObjectBuilder2.SelectedMemberWithParameters`1.MemberInfo">
323
+ <summary>
324
+ The member info stored.
325
+ </summary>
326
+ </member>
327
+ <member name="T:Microsoft.Practices.ObjectBuilder2.SelectedConstructor">
328
+ <summary>
329
+ Objects of this type are the return value from <see cref="M:Microsoft.Practices.ObjectBuilder2.IConstructorSelectorPolicy.SelectConstructor(Microsoft.Practices.ObjectBuilder2.IBuilderContext)"/>.
330
+ It encapsulates the desired <see cref="T:System.Reflection.ConstructorInfo"/> with the string keys
331
+ needed to look up the <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/> for each
332
+ parameter.
333
+ </summary>
334
+ </member>
335
+ <member name="M:Microsoft.Practices.ObjectBuilder2.SelectedConstructor.#ctor(System.Reflection.ConstructorInfo)">
336
+ <summary>
337
+ Create a new <see cref="T:Microsoft.Practices.ObjectBuilder2.SelectedConstructor"/> instance which
338
+ contains the given constructor.
339
+ </summary>
340
+ <param name="constructor"></param>
341
+ </member>
342
+ <member name="P:Microsoft.Practices.ObjectBuilder2.SelectedConstructor.Constructor">
343
+ <summary>
344
+ The constructor this object wraps.
345
+ </summary>
346
+ </member>
347
+ <member name="T:Microsoft.Practices.ObjectBuilder2.ConstructorSelectorPolicy`1">
348
+ <summary>
349
+ An implementation of <see cref="T:Microsoft.Practices.ObjectBuilder2.IConstructorSelectorPolicy"/> that chooses
350
+ constructors based on these criteria: first, pick a constructor marked with the
351
+ <typeparamref name="TInjectionConstructorMarkerAttribute"/> attribute. If there
352
+ isn't one, then choose the constructor with the longest parameter list. If that is ambiguous,
353
+ then throw.
354
+ </summary>
355
+ <exception cref="T:System.InvalidOperationException">Thrown when the constructor to choose is ambiguous.</exception>
356
+ <typeparam name="TInjectionConstructorMarkerAttribute">Attribute used to mark the constructor to call.</typeparam>
357
+ </member>
358
+ <member name="T:Microsoft.Practices.ObjectBuilder2.ConstructorSelectorPolicyBase`1">
359
+ <summary>
360
+ Base class that provides an implementation of <see cref="T:Microsoft.Practices.ObjectBuilder2.IConstructorSelectorPolicy"/>
361
+ which lets you override how the parameter resolvers are created.
362
+ </summary>
363
+ </member>
364
+ <member name="T:Microsoft.Practices.ObjectBuilder2.IConstructorSelectorPolicy">
365
+ <summary>
366
+ A <see cref="T:Microsoft.Practices.ObjectBuilder2.IBuilderPolicy"/> that, when implemented,
367
+ will determine which constructor to call from the build plan.
368
+ </summary>
369
+ </member>
370
+ <member name="M:Microsoft.Practices.ObjectBuilder2.IConstructorSelectorPolicy.SelectConstructor(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
371
+ <summary>
372
+ Choose the constructor to call for the given type.
373
+ </summary>
374
+ <param name="context">Current build context</param>
375
+ <returns>The chosen constructor.</returns>
376
+ </member>
377
+ <member name="M:Microsoft.Practices.ObjectBuilder2.ConstructorSelectorPolicyBase`1.SelectConstructor(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
378
+ <summary>
379
+ Choose the constructor to call for the given type.
380
+ </summary>
381
+ <param name="context">Current build context.</param>
382
+ <returns>The chosen constructor.</returns>
383
+ <exception cref="T:System.InvalidOperationException">Thrown when the constructor to choose is ambiguous.</exception>
384
+ </member>
385
+ <member name="M:Microsoft.Practices.ObjectBuilder2.ConstructorSelectorPolicyBase`1.CreateResolver(System.Reflection.ParameterInfo)">
386
+ <summary>
387
+ Create a <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/> instance for the given
388
+ <see cref="T:System.Reflection.ParameterInfo"/>.
389
+ </summary>
390
+ <param name="param">Parameter to create the resolver for.</param>
391
+ <returns>The resolver object.</returns>
392
+ </member>
393
+ <member name="M:Microsoft.Practices.ObjectBuilder2.ConstructorSelectorPolicyBase`1.ConstructorLengthComparer.Compare(System.Reflection.ConstructorInfo,System.Reflection.ConstructorInfo)">
394
+ <summary>
395
+ Compares two objects and returns a value indicating whether one is less than, equal to, or greater than the other.
396
+ </summary>
397
+
398
+ <returns>
399
+ Value Condition Less than zerox is less than y.Zerox equals y.Greater than zerox is greater than y.
400
+ </returns>
401
+
402
+ <param name="y">The second object to compare.</param>
403
+ <param name="x">The first object to compare.</param>
404
+ </member>
405
+ <member name="M:Microsoft.Practices.ObjectBuilder2.ConstructorSelectorPolicy`1.CreateResolver(System.Reflection.ParameterInfo)">
406
+ <summary>
407
+ Create a <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/> instance for the given
408
+ <see cref="T:System.Reflection.ParameterInfo"/>.
409
+ </summary>
410
+ <param name="param">Parameter to create the resolver for.</param>
411
+ <returns>The resolver object.</returns>
412
+ </member>
413
+ <member name="T:Microsoft.Practices.ObjectBuilder2.IBuildKeyMappingPolicy">
414
+ <summary>
415
+ Represents a builder policy for mapping build keys.
416
+ </summary>
417
+ </member>
418
+ <member name="M:Microsoft.Practices.ObjectBuilder2.IBuildKeyMappingPolicy.Map(System.Object)">
419
+ <summary>
420
+ Maps the build key.
421
+ </summary>
422
+ <param name="buildKey">The build key to map.</param>
423
+ <returns>The new build key.</returns>
424
+ </member>
425
+ <member name="T:Microsoft.Practices.ObjectBuilder2.IReadableLocator">
426
+ <summary>
427
+ Represents a locator that can be read from.
428
+ </summary>
429
+ <remarks>
430
+ <para>A locator is a dictionary of keys to values, but it keeps the values with
431
+ weak references, so that locating an object does not keep it alive. If you
432
+ want to keep the object alive too, you should consider using an
433
+ <see cref="T:Microsoft.Practices.ObjectBuilder2.ILifetimeContainer"/>.</para>
434
+ <para>Locators have a built-in concept of hierarchy, so you can ask questions
435
+ of a locator and tell it whether to return results from the current locator
436
+ only, or whether to ask the parent locator when local lookups fail.</para>
437
+ </remarks>
438
+ </member>
439
+ <member name="M:Microsoft.Practices.ObjectBuilder2.IReadableLocator.Contains(System.Object)">
440
+ <summary>
441
+ Determine if the locator contains an object for the given key.
442
+ </summary>
443
+ <param name="key">The key to check.</param>
444
+ <returns>
445
+ true if the locator contains an object for the key; returns
446
+ false otherwise.
447
+ </returns>
448
+ </member>
449
+ <member name="M:Microsoft.Practices.ObjectBuilder2.IReadableLocator.FindBy(System.Predicate{System.Collections.Generic.KeyValuePair{System.Object,System.Object}})">
450
+ <summary>
451
+ Finds objects in the locator using the predicate, and returns a temporary locator
452
+ filled with the found objects.
453
+ </summary>
454
+ <param name="predicate">The predicate to test whether to include an object.</param>
455
+ <returns>The new locator</returns>
456
+ <exception cref="T:System.ArgumentNullException">Predicate is null.</exception>
457
+ </member>
458
+ <member name="M:Microsoft.Practices.ObjectBuilder2.IReadableLocator.Get``1">
459
+ <summary>
460
+ Gets an object from the locator, registered with the key of typeof(T).
461
+ </summary>
462
+ <typeparam name="TItem">The type of the object to find.</typeparam>
463
+ <returns>The object, if found; null otherwise.</returns>
464
+ </member>
465
+ <member name="M:Microsoft.Practices.ObjectBuilder2.IReadableLocator.Get``1(System.Object)">
466
+ <summary>
467
+ Gets an object from the locator, registered with the given key.
468
+ </summary>
469
+ <typeparam name="TItem">The type of the object to find.</typeparam>
470
+ <param name="key">The key that the object is registered with.</param>
471
+ <returns>The object, if found; null otherwise.</returns>
472
+ <exception cref="T:System.ArgumentNullException">Key is null.</exception>
473
+ </member>
474
+ <member name="M:Microsoft.Practices.ObjectBuilder2.IReadableLocator.Get(System.Object)">
475
+ <summary>
476
+ Gets an object from the locator, registered with the given key.
477
+ </summary>
478
+ <param name="key">The key that the object is registered with.</param>
479
+ <returns>The object, if found; null otherwise.</returns>
480
+ <exception cref="T:System.ArgumentNullException">Key is null.</exception>
481
+ </member>
482
+ <member name="P:Microsoft.Practices.ObjectBuilder2.IReadableLocator.Count">
483
+ <summary>
484
+ Gets the number of items in the locator.
485
+ </summary>
486
+ <value>
487
+ The number of items in the locator.
488
+ </value>
489
+ </member>
490
+ <member name="P:Microsoft.Practices.ObjectBuilder2.IReadableLocator.ParentLocator">
491
+ <summary>
492
+ Gets the parent locator.
493
+ </summary>
494
+ <value>
495
+ The parent locator.
496
+ </value>
497
+ </member>
498
+ <member name="P:Microsoft.Practices.ObjectBuilder2.IReadableLocator.ReadOnly">
499
+ <summary>
500
+ Determines if the locator is read-only.
501
+ </summary>
502
+ <value>
503
+ true if the locator is read-only; otherwise, false.
504
+ </value>
505
+ </member>
506
+ <member name="T:Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey">
507
+ <summary>
508
+ Build key used to combine a type object with a string name. Used by
509
+ ObjectBuilder to indicate exactly what is being built.
510
+ </summary>
511
+ </member>
512
+ <member name="T:Microsoft.Practices.ObjectBuilder2.IBuildKey">
513
+ <summary>
514
+ Represents a build key based on type.
515
+ </summary>
516
+ </member>
517
+ <member name="M:Microsoft.Practices.ObjectBuilder2.IBuildKey.ReplaceType(System.Type)">
518
+ <summary>
519
+ Construct a new build key object with the current type
520
+ replaced with the specified <paramref name="newType"/>.
521
+ </summary>
522
+ <remarks>This method creates a new build key object, the original is unchanged.</remarks>
523
+ <param name="newType">New type to place in the build key.</param>
524
+ <returns>The new build key.</returns>
525
+ </member>
526
+ <member name="P:Microsoft.Practices.ObjectBuilder2.IBuildKey.Type">
527
+ <summary>
528
+ Gets the <see cref="P:Microsoft.Practices.ObjectBuilder2.IBuildKey.Type"/> that represents the key.
529
+ </summary>
530
+ <value>
531
+ The <see cref="P:Microsoft.Practices.ObjectBuilder2.IBuildKey.Type"/> that represents the key.
532
+ </value>
533
+ </member>
534
+ <member name="M:Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey.#ctor(System.Type,System.String)">
535
+ <summary>
536
+ Create a new <see cref="T:Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey"/> instance with the given
537
+ type and name.
538
+ </summary>
539
+ <param name="type"><see cref="P:Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey.Type"/> to build.</param>
540
+ <param name="name">Key to use to look up type mappings and singletons.</param>
541
+ </member>
542
+ <member name="M:Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey.#ctor(System.Type)">
543
+ <summary>
544
+ Create a new <see cref="T:Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey"/> instance for the default
545
+ buildup of the given type.
546
+ </summary>
547
+ <param name="type"><see cref="P:Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey.Type"/> to build.</param>
548
+ </member>
549
+ <member name="M:Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey.Make``1">
550
+ <summary>
551
+ This helper method creates a new <see cref="T:Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey"/> instance. It is
552
+ initialized for the default key for the given type.
553
+ </summary>
554
+ <typeparam name="T">Type to build.</typeparam>
555
+ <returns>A new <see cref="T:Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey"/> instance.</returns>
556
+ </member>
557
+ <member name="M:Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey.Make``1(System.String)">
558
+ <summary>
559
+ This helper method creates a new <see cref="T:Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey"/> instance for
560
+ the given type and key.
561
+ </summary>
562
+ <typeparam name="T">Type to build</typeparam>
563
+ <param name="name">Key to use to look up type mappings and singletons.</param>
564
+ <returns>A new <see cref="T:Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey"/> instance initialized with the given type and name.</returns>
565
+ </member>
566
+ <member name="M:Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey.ReplaceType(System.Type)">
567
+ <summary>
568
+ Construct a new build key object with the current type
569
+ replaced with the specified <paramref name="newType"/>.
570
+ </summary>
571
+ <remarks>This method creates a new build key object, the original is unchanged.</remarks>
572
+ <param name="newType">New type to place in the build key.</param>
573
+ <returns>The new build key.</returns>
574
+ </member>
575
+ <member name="M:Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey.Equals(System.Object)">
576
+ <summary>
577
+ Compare two <see cref="T:Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey"/> instances.
578
+ </summary>
579
+ <remarks>Two <see cref="T:Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey"/> instances compare equal
580
+ if they contain the same name and the same type. Also, comparing
581
+ against a different type will also return false.</remarks>
582
+ <param name="obj">Object to compare to.</param>
583
+ <returns>True if the two keys are equal, false if not.</returns>
584
+ </member>
585
+ <member name="M:Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey.GetHashCode">
586
+ <summary>
587
+ Calculate a hash code for this instance.
588
+ </summary>
589
+ <returns>A hash code.</returns>
590
+ </member>
591
+ <member name="M:Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey.op_Equality(Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey,Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey)">
592
+ <summary>
593
+ Compare two <see cref="T:Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey"/> instances for equality.
594
+ </summary>
595
+ <remarks>Two <see cref="T:Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey"/> instances compare equal
596
+ if they contain the same name and the same type.</remarks>
597
+ <param name="left">First of the two keys to compare.</param>
598
+ <param name="right">Second of the two keys to compare.</param>
599
+ <returns>True if the values of the keys are the same, else false.</returns>
600
+ </member>
601
+ <member name="M:Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey.op_Inequality(Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey,Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey)">
602
+ <summary>
603
+ Compare two <see cref="T:Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey"/> instances for inequality.
604
+ </summary>
605
+ <remarks>Two <see cref="T:Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey"/> instances compare equal
606
+ if they contain the same name and the same type. If either field differs
607
+ the keys are not equal.</remarks>
608
+ <param name="left">First of the two keys to compare.</param>
609
+ <param name="right">Second of the two keys to compare.</param>
610
+ <returns>false if the values of the keys are the same, else true.</returns>
611
+ </member>
612
+ <member name="M:Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey.ToString">
613
+ <summary>
614
+ Formats the build key as a string (primarily for debugging).
615
+ </summary>
616
+ <returns>A readable string representation of the build key.</returns>
617
+ </member>
618
+ <member name="P:Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey.Type">
619
+ <summary>
620
+ Return the <see cref="P:Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey.Type"/> stored in this build key.
621
+ </summary>
622
+ <value>The type to build.</value>
623
+ </member>
624
+ <member name="P:Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey.Name">
625
+ <summary>
626
+ Returns the name stored in this build key.
627
+ </summary>
628
+ <remarks>The name to use when building.</remarks>
629
+ </member>
630
+ <member name="T:Microsoft.Practices.ObjectBuilder2.BuildKey">
631
+ <summary>
632
+ Utility methods for dealing with arbitrary build key objects.
633
+ </summary>
634
+ </member>
635
+ <member name="M:Microsoft.Practices.ObjectBuilder2.BuildKey.GetType(System.Object)">
636
+ <summary>
637
+ Gets the <see cref="T:System.Type"/> of object to build from the build key.
638
+ </summary>
639
+ <param name="buildKey">The build key to get the <see cref="T:System.Type"/>.</param>
640
+ <returns>The <see cref="T:System.Type"/> of object to build from the key.</returns>
641
+ </member>
642
+ <member name="M:Microsoft.Practices.ObjectBuilder2.BuildKey.TryGetType(System.Object,System.Type@)">
643
+ <summary>
644
+ Tries to get the <see cref="T:System.Type"/> from <paramref name="buildKey"/>.
645
+ </summary>
646
+ <param name="buildKey">The build key to get the <see cref="T:System.Type"/>.</param>
647
+ <param name="type"></param>
648
+ <returns>true if the <see cref="T:System.Type"/> was found; otherwise, false.</returns>
649
+ </member>
650
+ <member name="M:Microsoft.Practices.ObjectBuilder2.BuildKey.ReplaceType(System.Object,System.Type)">
651
+ <summary>
652
+ Given a <paramref name="buildKey"/>, return a new build key
653
+ which is the same as the original, except that the type has
654
+ been replaced with <paramref name="newType"/>.
655
+ </summary>
656
+ <param name="buildKey">original build key</param>
657
+ <param name="newType">New type to put in new build key.</param>
658
+ <returns>The new build key.</returns>
659
+ </member>
660
+ <member name="T:Microsoft.Practices.ObjectBuilder2.ILifetimeFactoryPolicy">
661
+ <summary>
662
+ A builder policy used to create lifetime policy instances.
663
+ Used by the LifetimeStrategy when instantiating open
664
+ generic types.
665
+ </summary>
666
+ </member>
667
+ <member name="M:Microsoft.Practices.ObjectBuilder2.ILifetimeFactoryPolicy.CreateLifetimePolicy">
668
+ <summary>
669
+ Create a new instance of <see cref="T:Microsoft.Practices.ObjectBuilder2.ILifetimePolicy"/>.
670
+ </summary>
671
+ <returns>The new instance.</returns>
672
+ </member>
673
+ <member name="T:Microsoft.Practices.ObjectBuilder2.ReadWriteLocator">
674
+ <summary>
675
+ Represents an abstract implementation of <see cref="T:Microsoft.Practices.ObjectBuilder2.IReadWriteLocator"/>.
676
+ </summary>
677
+ </member>
678
+ <member name="T:Microsoft.Practices.ObjectBuilder2.ReadableLocator">
679
+ <summary>
680
+ Represents an abstract implementation of <see cref="T:Microsoft.Practices.ObjectBuilder2.IReadableLocator"/>.
681
+ </summary>
682
+ </member>
683
+ <member name="M:Microsoft.Practices.ObjectBuilder2.ReadableLocator.#ctor">
684
+ <summary>
685
+ Initialize a new instance of the <see cref="T:Microsoft.Practices.ObjectBuilder2.ReadableLocator"/> class.
686
+ </summary>
687
+ </member>
688
+ <member name="M:Microsoft.Practices.ObjectBuilder2.ReadableLocator.#ctor(Microsoft.Practices.ObjectBuilder2.IReadableLocator)">
689
+ <summary>
690
+ Initialize a new instance of the <see cref="T:Microsoft.Practices.ObjectBuilder2.ReadableLocator"/> class with a parent <see cref="T:Microsoft.Practices.ObjectBuilder2.IReadableLocator"/>.
691
+ </summary>
692
+ <param name="parentLocator">A parent <see cref="T:Microsoft.Practices.ObjectBuilder2.IReadableLocator"/>.</param>
693
+ </member>
694
+ <member name="M:Microsoft.Practices.ObjectBuilder2.ReadableLocator.Contains(System.Object)">
695
+ <summary>
696
+ Determine if the locator contains an object for the given key.
697
+ </summary>
698
+ <param name="key">The key to check.</param>
699
+ <returns>
700
+ true if the locator contains an object for the key; returns
701
+ false otherwise.
702
+ </returns>
703
+ </member>
704
+ <member name="M:Microsoft.Practices.ObjectBuilder2.ReadableLocator.FindBy(System.Predicate{System.Collections.Generic.KeyValuePair{System.Object,System.Object}})">
705
+ <summary>
706
+ Finds objects in the locator using the predicate, and returns a temporary locator
707
+ filled with the found objects.
708
+ </summary>
709
+ <param name="predicate">The predicate to test whether to include an object.</param>
710
+ <returns>The new locator</returns>
711
+ <exception cref="T:System.ArgumentNullException">Predicate is null.</exception>
712
+ </member>
713
+ <member name="M:Microsoft.Practices.ObjectBuilder2.ReadableLocator.Get``1">
714
+ <summary>
715
+ Gets an object from the locator, registered with the key of typeof(T).
716
+ </summary>
717
+ <typeparam name="TItem">The type of the object to find.</typeparam>
718
+ <returns>The object, if found; null otherwise.</returns>
719
+ </member>
720
+ <member name="M:Microsoft.Practices.ObjectBuilder2.ReadableLocator.Get``1(System.Object)">
721
+ <summary>
722
+ Gets an object from the locator, registered with the given key.
723
+ </summary>
724
+ <typeparam name="TItem">The type of the object to find.</typeparam>
725
+ <param name="key">The key that the object is registered with.</param>
726
+ <returns>The object, if found; null otherwise.</returns>
727
+ <exception cref="T:System.ArgumentNullException"><paramref name="key"/> is null.</exception>
728
+ </member>
729
+ <member name="M:Microsoft.Practices.ObjectBuilder2.ReadableLocator.Get(System.Object)">
730
+ <summary>
731
+ Gets an object from the locator, registered with the given key.
732
+ </summary>
733
+ <param name="key">The key that the object is registered with.</param>
734
+ <returns>The object, if found; null otherwise.</returns>
735
+ <exception cref="T:System.ArgumentNullException">Key is null.</exception>
736
+ </member>
737
+ <member name="M:Microsoft.Practices.ObjectBuilder2.ReadableLocator.GetEnumerator">
738
+ <summary>
739
+ Returns an enumerator that iterates through the locator.
740
+ </summary>
741
+ <returns>
742
+ An <see cref="T:System.Collections.IEnumerator"/> object that can be used to iterate through the locator.
743
+ </returns>
744
+ </member>
745
+ <member name="M:Microsoft.Practices.ObjectBuilder2.ReadableLocator.System#Collections#IEnumerable#GetEnumerator">
746
+ <summary>
747
+ Returns an enumerator that iterates through the locator.
748
+ </summary>
749
+ <returns>
750
+ An <see cref="T:System.Collections.IEnumerator"/> object that can be used to iterate through the locator.
751
+ </returns>
752
+ </member>
753
+ <member name="P:Microsoft.Practices.ObjectBuilder2.ReadableLocator.Count">
754
+ <summary>
755
+ Gets the number of items in the locator.
756
+ </summary>
757
+ <value>
758
+ The number of items in the locator.
759
+ </value>
760
+ </member>
761
+ <member name="P:Microsoft.Practices.ObjectBuilder2.ReadableLocator.ParentLocator">
762
+ <summary>
763
+ Gets the parent locator.
764
+ </summary>
765
+ <value>
766
+ The parent locator.
767
+ </value>
768
+ </member>
769
+ <member name="P:Microsoft.Practices.ObjectBuilder2.ReadableLocator.ReadOnly">
770
+ <summary>
771
+ Determines if the locator is read-only.
772
+ </summary>
773
+ <value>
774
+ true if the locator is read-only; otherwise, false.
775
+ </value>
776
+ </member>
777
+ <member name="T:Microsoft.Practices.ObjectBuilder2.IReadWriteLocator">
778
+ <summary>
779
+ Represents a locator that can be read from and written to.
780
+ </summary>
781
+ <remarks>
782
+ <para>
783
+ A locator is dictionary of keys to values, but it keeps the values with
784
+ weak references, so that locating an object does not keep it alive. If you
785
+ want to keep the object alive too, you should consider using an
786
+ <see cref="T:Microsoft.Practices.ObjectBuilder2.ILifetimeContainer"/>.
787
+ </para>
788
+ <para>
789
+ Locators have a built-in concept of hierarchy, so you can ask questions
790
+ of a locator and tell it whether to return results from the current locator
791
+ only, or whether to ask the parent locator when local lookups fail.</para>
792
+ </remarks>
793
+ </member>
794
+ <member name="M:Microsoft.Practices.ObjectBuilder2.IReadWriteLocator.Add(System.Object,System.Object)">
795
+ <summary>
796
+ Adds an object to the locator, with the given key.
797
+ </summary>
798
+ <param name="key">The key to register the object with.</param>
799
+ <param name="value">The object to be registered.</param>
800
+ <exception cref="T:System.ArgumentNullException"><paramref name="key"/> or value are null.</exception>
801
+ </member>
802
+ <member name="M:Microsoft.Practices.ObjectBuilder2.IReadWriteLocator.Remove(System.Object)">
803
+ <summary>
804
+ Removes an object from the locator.
805
+ </summary>
806
+ <param name="key">The key under which the object was registered.</param>
807
+ <returns>
808
+ Returns true if the object was found in the locator; returns
809
+ false otherwise.
810
+ </returns>
811
+ <exception cref="T:System.ArgumentNullException"><paramref name="key"/> is null.</exception>
812
+ </member>
813
+ <member name="M:Microsoft.Practices.ObjectBuilder2.ReadWriteLocator.#ctor">
814
+ <summary>
815
+ Initialize a new instance of the <see cref="T:Microsoft.Practices.ObjectBuilder2.ReadWriteLocator"/> class.
816
+ </summary>
817
+ </member>
818
+ <member name="M:Microsoft.Practices.ObjectBuilder2.ReadWriteLocator.#ctor(Microsoft.Practices.ObjectBuilder2.IReadableLocator)">
819
+ <summary>
820
+ Initialize a new instance of the <see cref="T:Microsoft.Practices.ObjectBuilder2.ReadWriteLocator"/> class with a parent <see cref="T:Microsoft.Practices.ObjectBuilder2.IReadableLocator"/>.
821
+ </summary>
822
+ <param name="parentLocator">A parent <see cref="T:Microsoft.Practices.ObjectBuilder2.IReadableLocator"/>.</param>
823
+ </member>
824
+ <member name="M:Microsoft.Practices.ObjectBuilder2.ReadWriteLocator.Add(System.Object,System.Object)">
825
+ <summary>
826
+ Adds an object to the locator, with the given key.
827
+ </summary>
828
+ <param name="key">The key to register the object with.</param>
829
+ <param name="value">The object to be registered.</param>
830
+ <exception cref="T:System.ArgumentNullException"><paramref name="key"/> or value are null.</exception>
831
+ </member>
832
+ <member name="M:Microsoft.Practices.ObjectBuilder2.ReadWriteLocator.Remove(System.Object)">
833
+ <summary>
834
+ Removes an object from the locator.
835
+ </summary>
836
+ <param name="key">The key under which the object was registered.</param>
837
+ <returns>
838
+ Returns true if the object was found in the locator; returns
839
+ false otherwise.
840
+ </returns>
841
+ <exception cref="T:System.ArgumentNullException"><paramref name="key"/> is null.</exception>
842
+ </member>
843
+ <member name="P:Microsoft.Practices.ObjectBuilder2.ReadWriteLocator.ReadOnly">
844
+ <summary>
845
+ Determines if the locator is read-only.
846
+ </summary>
847
+ <value>
848
+ true if the locator is read-only; otherwise, false.
849
+ </value>
850
+ </member>
851
+ <member name="T:Microsoft.Practices.ObjectBuilder2.Guard">
852
+ <summary>
853
+ Represents a simple class for validating parameters and throwing exceptions.
854
+ </summary>
855
+ </member>
856
+ <member name="M:Microsoft.Practices.ObjectBuilder2.Guard.ArgumentNotNull(System.Object,System.String)">
857
+ <summary>
858
+ Validates <paramref name="argumentValue"/> is not null and throws <see cref="T:System.ArgumentNullException"/> if it is null.
859
+ </summary>
860
+ <param name="argumentValue">The value to validate.</param>
861
+ <param name="argumentName">The name of <paramref name="argumentValue"/>.</param>
862
+ </member>
863
+ <member name="M:Microsoft.Practices.ObjectBuilder2.Guard.ArgumentNotNullOrEmpty(System.String,System.String)">
864
+ <summary>
865
+ Validates <paramref name="argumentValue"/> is not null or an empty string and throws <see cref="T:System.ArgumentNullException"/> if it is null or an empty string .
866
+ </summary>
867
+ <param name="argumentValue">The value to validate.</param>
868
+ <param name="argumentName">The name of <paramref name="argumentValue"/>.</param>
869
+ </member>
870
+ <member name="T:Microsoft.Practices.ObjectBuilder2.TransientLifetimePolicy">
871
+ <summary>
872
+ An implementation of <see cref="T:Microsoft.Practices.ObjectBuilder2.ILifetimePolicy"/> that does nothing,
873
+ ensuring that a new object gets created every time.
874
+ </summary>
875
+ </member>
876
+ <member name="T:Microsoft.Practices.ObjectBuilder2.ILifetimePolicy">
877
+ <summary>
878
+ A <see cref="T:Microsoft.Practices.ObjectBuilder2.IBuilderPolicy"/> that controls how instances are
879
+ persisted and recovered from an external store. Used to implement
880
+ things like singletons and per-http-request lifetime.
881
+ </summary>
882
+ </member>
883
+ <member name="M:Microsoft.Practices.ObjectBuilder2.ILifetimePolicy.GetValue">
884
+ <summary>
885
+ Retrieve a value from the backing store associated with this Lifetime policy.
886
+ </summary>
887
+ <returns>the object desired, or null if no such object is currently stored.</returns>
888
+ </member>
889
+ <member name="M:Microsoft.Practices.ObjectBuilder2.ILifetimePolicy.SetValue(System.Object)">
890
+ <summary>
891
+ Stores the given value into backing store for retrieval later.
892
+ </summary>
893
+ <param name="newValue">The object to store.</param>
894
+ </member>
895
+ <member name="M:Microsoft.Practices.ObjectBuilder2.ILifetimePolicy.RemoveValue">
896
+ <summary>
897
+ Remove the value this lifetime policy is managing from backing store.
898
+ </summary>
899
+ </member>
900
+ <member name="M:Microsoft.Practices.ObjectBuilder2.TransientLifetimePolicy.GetValue">
901
+ <summary>
902
+ Retrieve a value from the backing store associated with this Lifetime policy.
903
+ </summary>
904
+ <returns>the object desired, or null if no such object is currently stored.</returns>
905
+ </member>
906
+ <member name="M:Microsoft.Practices.ObjectBuilder2.TransientLifetimePolicy.SetValue(System.Object)">
907
+ <summary>
908
+ Stores the given value into backing store for retrieval later.
909
+ </summary>
910
+ <param name="newValue">The object being stored.</param>
911
+ </member>
912
+ <member name="M:Microsoft.Practices.ObjectBuilder2.TransientLifetimePolicy.RemoveValue">
913
+ <summary>
914
+ Remove the given object from backing store.
915
+ </summary>
916
+ </member>
917
+ <member name="T:Microsoft.Practices.ObjectBuilder2.SelectedProperty">
918
+ <summary>
919
+ Objects of this type are returned from
920
+ <see cref="M:Microsoft.Practices.ObjectBuilder2.IPropertySelectorPolicy.SelectProperties(Microsoft.Practices.ObjectBuilder2.IBuilderContext)"/>.
921
+ This class combines the <see cref="T:System.Reflection.PropertyInfo"/> about
922
+ the property with the string key used to look up the resolver
923
+ for this property's value.
924
+ </summary>
925
+ </member>
926
+ <member name="M:Microsoft.Practices.ObjectBuilder2.SelectedProperty.#ctor(System.Reflection.PropertyInfo,System.String)">
927
+ <summary>
928
+ Create an instance of <see cref="T:Microsoft.Practices.ObjectBuilder2.SelectedProperty"/>
929
+ with the given <see cref="T:System.Reflection.PropertyInfo"/> and key.
930
+ </summary>
931
+ <param name="property">The property.</param>
932
+ <param name="key">Key to use to look up the resolver.</param>
933
+ </member>
934
+ <member name="P:Microsoft.Practices.ObjectBuilder2.SelectedProperty.Property">
935
+ <summary>
936
+ PropertyInfo for this property.
937
+ </summary>
938
+ </member>
939
+ <member name="P:Microsoft.Practices.ObjectBuilder2.SelectedProperty.Key">
940
+ <summary>
941
+ Key to look up this property's resolver.
942
+ </summary>
943
+ </member>
944
+ <member name="T:Microsoft.Practices.ObjectBuilder2.MethodSelectorPolicyBase`1">
945
+ <summary>
946
+ Base class that provides an implementation of <see cref="T:Microsoft.Practices.ObjectBuilder2.IMethodSelectorPolicy"/>
947
+ which lets you override how the parameter resolvers are created.
948
+ </summary>
949
+ <typeparam name="TMarkerAttribute">Attribute that marks methods that should
950
+ be called.</typeparam>
951
+ </member>
952
+ <member name="T:Microsoft.Practices.ObjectBuilder2.IMethodSelectorPolicy">
953
+ <summary>
954
+ An <see cref="T:Microsoft.Practices.ObjectBuilder2.IBuilderPolicy"/> that will examine the given
955
+ types and return a sequence of <see cref="T:System.Reflection.MethodInfo"/> objects
956
+ that should be called as part of building the object.
957
+ </summary>
958
+ </member>
959
+ <member name="M:Microsoft.Practices.ObjectBuilder2.IMethodSelectorPolicy.SelectMethods(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
960
+ <summary>
961
+ Return the sequence of methods to call while building the target object.
962
+ </summary>
963
+ <param name="context">Current build context.</param>
964
+ <returns>Sequence of methods to call.</returns>
965
+ </member>
966
+ <member name="M:Microsoft.Practices.ObjectBuilder2.MethodSelectorPolicyBase`1.SelectMethods(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
967
+ <summary>
968
+ Return the sequence of methods to call while building the target object.
969
+ </summary>
970
+ <param name="context">Current build context.</param>
971
+ <returns>Sequence of methods to call.</returns>
972
+ </member>
973
+ <member name="M:Microsoft.Practices.ObjectBuilder2.MethodSelectorPolicyBase`1.CreateResolver(System.Reflection.ParameterInfo)">
974
+ <summary>
975
+ Create a <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/> instance for the given
976
+ <see cref="T:System.Reflection.ParameterInfo"/>.
977
+ </summary>
978
+ <param name="parameter">Parameter to create the resolver for.</param>
979
+ <returns>The resolver object.</returns>
980
+ </member>
981
+ <member name="T:Microsoft.Practices.ObjectBuilder2.IBuilderAware">
982
+ <summary>
983
+ Implemented on a class when it wants to receive notifications
984
+ about the build process.
985
+ </summary>
986
+ </member>
987
+ <member name="M:Microsoft.Practices.ObjectBuilder2.IBuilderAware.OnBuiltUp(System.Object)">
988
+ <summary>
989
+ Called by the <see cref="T:Microsoft.Practices.ObjectBuilder2.BuilderAwareStrategy"/> when the object is being built up.
990
+ </summary>
991
+ <param name="buildKey">The key of the object that was just built up.</param>
992
+ </member>
993
+ <member name="M:Microsoft.Practices.ObjectBuilder2.IBuilderAware.OnTearingDown">
994
+ <summary>
995
+ Called by the <see cref="T:Microsoft.Practices.ObjectBuilder2.BuilderAwareStrategy"/> when the object is being torn down.
996
+ </summary>
997
+ </member>
998
+ <member name="T:Microsoft.Practices.ObjectBuilder2.WeakRefDictionary`2">
999
+ <summary>
1000
+ Represents a dictionary which stores the values as weak references instead of strong
1001
+ references. Null values are supported.
1002
+ </summary>
1003
+ <typeparam name="TKey">The key type</typeparam>
1004
+ <typeparam name="TValue">The value type</typeparam>
1005
+ </member>
1006
+ <member name="M:Microsoft.Practices.ObjectBuilder2.WeakRefDictionary`2.Add(`0,`1)">
1007
+ <summary>
1008
+ Gets the count of the number of items in the dictionary.
1009
+ </summary>
1010
+ <value>
1011
+ The count of the number of items in the dictionary.
1012
+ </value>
1013
+ <remarks>
1014
+ Since the items in the dictionary are held by weak reference, the count value
1015
+ cannot be relied upon to guarantee the number of objects that would be discovered via
1016
+ enumeration. Treat the Count as an estimate only.
1017
+ </remarks>
1018
+ </member>
1019
+ <member name="M:Microsoft.Practices.ObjectBuilder2.WeakRefDictionary`2.ContainsKey(`0)">
1020
+ <summary>
1021
+ Determines if the dictionary contains a value for the key.
1022
+ </summary>
1023
+ <param name="key">The key to look for.</param>
1024
+ <returns>true if the key is contained in the dictionary; otherwise, false.</returns>
1025
+ </member>
1026
+ <member name="M:Microsoft.Practices.ObjectBuilder2.WeakRefDictionary`2.GetEnumerator">
1027
+ <summary>
1028
+ Returns an enumerator that iterates through the dictionary.
1029
+ </summary>
1030
+ <returns>
1031
+ An <see cref="T:System.Collections.IEnumerator"/> object that can be used to iterate through the dictionary.
1032
+ </returns>
1033
+ </member>
1034
+ <member name="M:Microsoft.Practices.ObjectBuilder2.WeakRefDictionary`2.Remove(`0)">
1035
+ <summary>
1036
+ Removes an item from the dictionary.
1037
+ </summary>
1038
+ <param name="key">The key of the item to be removed.</param>
1039
+ <returns>Returns true if the key was in the dictionary; return false otherwise.</returns>
1040
+ </member>
1041
+ <member name="M:Microsoft.Practices.ObjectBuilder2.WeakRefDictionary`2.TryGet(`0,`1@)">
1042
+ <summary>
1043
+ Attempts to get a value from the dictionary.
1044
+ </summary>
1045
+ <param name="key">The key</param>
1046
+ <param name="value">The value</param>
1047
+ <returns>Returns true if the value was present; false otherwise.</returns>
1048
+ </member>
1049
+ <member name="P:Microsoft.Practices.ObjectBuilder2.WeakRefDictionary`2.Count">
1050
+ <summary>
1051
+ Returns a count of the number of items in the dictionary.
1052
+ </summary>
1053
+ <remarks>
1054
+ Since the items in the dictionary are held by weak reference, the count value
1055
+ cannot be relied upon to guarantee the number of objects that would be discovered via
1056
+ enumeration. Treat the Count as an estimate only.
1057
+ </remarks>
1058
+ </member>
1059
+ <member name="P:Microsoft.Practices.ObjectBuilder2.WeakRefDictionary`2.Item(`0)">
1060
+ <summary>
1061
+ Retrieves a value from the dictionary.
1062
+ </summary>
1063
+ <param name="key">The key to look for.</param>
1064
+ <returns>The value in the dictionary.</returns>
1065
+ <exception cref="T:System.Collections.Generic.KeyNotFoundException">Thrown when the key does exist in the dictionary.
1066
+ Since the dictionary contains weak references, the key may have been removed by the
1067
+ garbage collection of the object.</exception>
1068
+ </member>
1069
+ <member name="T:Microsoft.Practices.ObjectBuilder2.Properties.Resources">
1070
+ <summary>
1071
+ A strongly-typed resource class, for looking up localized strings, etc.
1072
+ </summary>
1073
+ </member>
1074
+ <member name="P:Microsoft.Practices.ObjectBuilder2.Properties.Resources.ResourceManager">
1075
+ <summary>
1076
+ Returns the cached ResourceManager instance used by this class.
1077
+ </summary>
1078
+ </member>
1079
+ <member name="P:Microsoft.Practices.ObjectBuilder2.Properties.Resources.Culture">
1080
+ <summary>
1081
+ Overrides the current thread's CurrentUICulture property for all
1082
+ resource lookups using this strongly typed resource class.
1083
+ </summary>
1084
+ </member>
1085
+ <member name="P:Microsoft.Practices.ObjectBuilder2.Properties.Resources.AmbiguousInjectionConstructor">
1086
+ <summary>
1087
+ Looks up a localized string similar to The type {0} has multiple constructors of length {1}. Unable to disambiguate..
1088
+ </summary>
1089
+ </member>
1090
+ <member name="P:Microsoft.Practices.ObjectBuilder2.Properties.Resources.BuildFailedException">
1091
+ <summary>
1092
+ Looks up a localized string similar to The current build operation (build key {2}) failed: {3} (Strategy type {0}, index {1}).
1093
+ </summary>
1094
+ </member>
1095
+ <member name="P:Microsoft.Practices.ObjectBuilder2.Properties.Resources.CannotConstructInterface">
1096
+ <summary>
1097
+ Looks up a localized string similar to The current type, {0}, is an interface and cannot be constructed. Are you missing a type mapping?.
1098
+ </summary>
1099
+ </member>
1100
+ <member name="P:Microsoft.Practices.ObjectBuilder2.Properties.Resources.CannotExtractTypeFromBuildKey">
1101
+ <summary>
1102
+ Looks up a localized string similar to Cannot extract type from build key {0}..
1103
+ </summary>
1104
+ </member>
1105
+ <member name="P:Microsoft.Practices.ObjectBuilder2.Properties.Resources.CannotInjectMethodWithOutParam">
1106
+ <summary>
1107
+ Looks up a localized string similar to The method {1} on type {0} has an out parameter. Injection cannot be performed..
1108
+ </summary>
1109
+ </member>
1110
+ <member name="P:Microsoft.Practices.ObjectBuilder2.Properties.Resources.CannotInjectOpenGenericMethod">
1111
+ <summary>
1112
+ Looks up a localized string similar to The method {1} on type {0} is marked for injection, but it is an open generic method. Injection cannot be performed..
1113
+ </summary>
1114
+ </member>
1115
+ <member name="P:Microsoft.Practices.ObjectBuilder2.Properties.Resources.ConstructorParameterResolutionFailed">
1116
+ <summary>
1117
+ Looks up a localized string similar to The parameter {0} could not be resolved when attempting to call constructor {1}..
1118
+ </summary>
1119
+ </member>
1120
+ <member name="P:Microsoft.Practices.ObjectBuilder2.Properties.Resources.KeyAlreadyPresent">
1121
+ <summary>
1122
+ Looks up a localized string similar to An item with the given key is already present in the dictionary..
1123
+ </summary>
1124
+ </member>
1125
+ <member name="P:Microsoft.Practices.ObjectBuilder2.Properties.Resources.MethodParameterResolutionFailed">
1126
+ <summary>
1127
+ Looks up a localized string similar to The value for parameter &quot;{1}&quot; of method {0} could not be resolved. .
1128
+ </summary>
1129
+ </member>
1130
+ <member name="P:Microsoft.Practices.ObjectBuilder2.Properties.Resources.MissingDependency">
1131
+ <summary>
1132
+ Looks up a localized string similar to Could not resolve dependency for build key {0}..
1133
+ </summary>
1134
+ </member>
1135
+ <member name="P:Microsoft.Practices.ObjectBuilder2.Properties.Resources.MultipleInjectionConstructors">
1136
+ <summary>
1137
+ Looks up a localized string similar to The type {0} has multiple constructors marked with the InjectionConstructor attribute. Unable to disambiguate..
1138
+ </summary>
1139
+ </member>
1140
+ <member name="P:Microsoft.Practices.ObjectBuilder2.Properties.Resources.MustHaveOpenGenericType">
1141
+ <summary>
1142
+ Looks up a localized string similar to The supplied type {0} must be an open generic type..
1143
+ </summary>
1144
+ </member>
1145
+ <member name="P:Microsoft.Practices.ObjectBuilder2.Properties.Resources.MustHaveSameNumberOfGenericArguments">
1146
+ <summary>
1147
+ Looks up a localized string similar to The supplied type {0} does not have the same number of generic arguments as the target type {1}..
1148
+ </summary>
1149
+ </member>
1150
+ <member name="P:Microsoft.Practices.ObjectBuilder2.Properties.Resources.NoConstructorFound">
1151
+ <summary>
1152
+ Looks up a localized string similar to The type {0} does not have an accessible constructor..
1153
+ </summary>
1154
+ </member>
1155
+ <member name="P:Microsoft.Practices.ObjectBuilder2.Properties.Resources.PropertyValueResolutionFailed">
1156
+ <summary>
1157
+ Looks up a localized string similar to The value for the property &quot;{0}&quot; could not be resolved..
1158
+ </summary>
1159
+ </member>
1160
+ <member name="P:Microsoft.Practices.ObjectBuilder2.Properties.Resources.ProvidedStringArgMustNotBeEmpty">
1161
+ <summary>
1162
+ Looks up a localized string similar to The provided string argument must not be empty..
1163
+ </summary>
1164
+ </member>
1165
+ <member name="T:Microsoft.Practices.ObjectBuilder2.Builder">
1166
+ <summary>
1167
+ An implementation of <see cref="T:Microsoft.Practices.ObjectBuilder2.IBuilder"/>. It contains all the default strategies shipped
1168
+ with ObjectBuilder.
1169
+ </summary>
1170
+ </member>
1171
+ <member name="T:Microsoft.Practices.ObjectBuilder2.IBuilder">
1172
+ <summary>
1173
+ Represents the main interface for an object builder.
1174
+ </summary>
1175
+ </member>
1176
+ <member name="M:Microsoft.Practices.ObjectBuilder2.IBuilder.BuildUp(Microsoft.Practices.ObjectBuilder2.IReadWriteLocator,Microsoft.Practices.ObjectBuilder2.ILifetimeContainer,Microsoft.Practices.ObjectBuilder2.IPolicyList,Microsoft.Practices.ObjectBuilder2.IStrategyChain,System.Object,System.Object)">
1177
+ <summary>
1178
+ Performs a build operation.
1179
+ </summary>
1180
+ <remarks>
1181
+ This operation uses the strategies and permanent policies already configured
1182
+ into the builder, combined with the optional transient policies, and starts a build
1183
+ operation. Transient policies override any built-in policies, when present.
1184
+ </remarks>
1185
+ <param name="locator">The locator to be used for this build operation.</param>
1186
+ <param name="lifetime">The <see cref="T:Microsoft.Practices.ObjectBuilder2.ILifetimeContainer"/> to use for this build operation.</param>
1187
+ <param name="policies">
1188
+ The transient policies to apply to this build. These
1189
+ policies take precedence over any permanent policies built into the builder.
1190
+ </param>
1191
+ <param name="strategies">
1192
+ The <see cref="T:Microsoft.Practices.ObjectBuilder2.IStrategyChain"/> to use for this build operation.
1193
+ </param>
1194
+ <param name="buildKey">The key of the object to build.</param>
1195
+ <param name="existing">
1196
+ The existing object to run the build chain on, if one exists.
1197
+ If null is passed, a new object instance will typically be created by some strategy
1198
+ in the chain.
1199
+ </param>
1200
+ <returns>The built object.</returns>
1201
+ </member>
1202
+ <member name="M:Microsoft.Practices.ObjectBuilder2.IBuilder.BuildUp``1(Microsoft.Practices.ObjectBuilder2.IReadWriteLocator,Microsoft.Practices.ObjectBuilder2.ILifetimeContainer,Microsoft.Practices.ObjectBuilder2.IPolicyList,Microsoft.Practices.ObjectBuilder2.IStrategyChain,System.Object,System.Object)">
1203
+ <summary>
1204
+ Performs a build operation.
1205
+ </summary>
1206
+ <remarks>
1207
+ This operation uses the strategies and permanent policies already configured
1208
+ into the builder, combined with the optional transient policies, and starts a build
1209
+ operation. Transient policies override any built-in policies, when present.
1210
+ </remarks>
1211
+ <typeparam name="TTypeToBuild">The type to build.</typeparam>
1212
+ <param name="locator">The locator to be used for this build operation.</param>
1213
+ <param name="lifetime">The <see cref="T:Microsoft.Practices.ObjectBuilder2.ILifetimeContainer"/> to use for this build operation.</param>
1214
+ <param name="policies">
1215
+ The transient policies to apply to this build. These
1216
+ policies take precedence over any permanent policies built into the builder.
1217
+ </param>
1218
+ <param name="strategies">
1219
+ The <see cref="T:Microsoft.Practices.ObjectBuilder2.IStrategyChain"/> to use for this build operation.
1220
+ </param>
1221
+ <param name="buildKey">The key of the object to build.</param>
1222
+ <param name="existing">
1223
+ The existing object to run the build chain on, if one exists.
1224
+ If null is passed, a new object instance will typically be created by some strategy
1225
+ in the chain.
1226
+ </param>
1227
+ <returns>The built object.</returns>
1228
+ </member>
1229
+ <member name="M:Microsoft.Practices.ObjectBuilder2.IBuilder.TearDown``1(Microsoft.Practices.ObjectBuilder2.IReadWriteLocator,Microsoft.Practices.ObjectBuilder2.ILifetimeContainer,Microsoft.Practices.ObjectBuilder2.IPolicyList,Microsoft.Practices.ObjectBuilder2.IStrategyChain,``0)">
1230
+ <summary>
1231
+ Performs an unbuild operation.
1232
+ </summary>
1233
+ <typeparam name="TItem">The type to unbuild. If not provided, it will be inferred from the
1234
+ type of item.
1235
+ </typeparam>
1236
+ <param name="locator">The locator to be used for this build operation.</param>
1237
+ <param name="lifetime">The <see cref="T:Microsoft.Practices.ObjectBuilder2.ILifetimeContainer"/> to use for this build operation.</param>
1238
+ <param name="policies">
1239
+ The transient policies to apply to this build. These
1240
+ policies take precedence over any permanent policies built into the builder.
1241
+ </param>
1242
+ <param name="strategies">
1243
+ The <see cref="T:Microsoft.Practices.ObjectBuilder2.IStrategyChain"/> to use for this build operation.
1244
+ </param>
1245
+ <param name="item">The item to tear down.</param>
1246
+ <returns>The torn down item.</returns>
1247
+ </member>
1248
+ <member name="M:Microsoft.Practices.ObjectBuilder2.Builder.BuildUp(Microsoft.Practices.ObjectBuilder2.IReadWriteLocator,Microsoft.Practices.ObjectBuilder2.ILifetimeContainer,Microsoft.Practices.ObjectBuilder2.IPolicyList,Microsoft.Practices.ObjectBuilder2.IStrategyChain,System.Object,System.Object)">
1249
+ <summary>
1250
+ Performs a build operation.
1251
+ </summary>
1252
+ <remarks>
1253
+ This operation uses the strategies and permanent policies already configured
1254
+ into the builder, combined with the optional transient policies, and starts a build
1255
+ operation. Transient policies override any built-in policies, when present.
1256
+ </remarks>
1257
+ <param name="locator">The locator to be used for this build operation.</param>
1258
+ <param name="lifetime">The <see cref="T:Microsoft.Practices.ObjectBuilder2.ILifetimeContainer"/> to use for this build operation.</param>
1259
+ <param name="policies">
1260
+ The transient policies to apply to this build. These
1261
+ policies take precedence over any permanent policies built into the builder.
1262
+ </param>
1263
+ <param name="strategies">
1264
+ The <see cref="T:Microsoft.Practices.ObjectBuilder2.IStrategyChain"/> to use for this build operation.
1265
+ </param>
1266
+ <param name="buildKey">The key of the object to build.</param>
1267
+ <param name="existing">
1268
+ The existing object to run the build chain on, if one exists.
1269
+ If null is passed, a new object instance will typically be created by some strategy
1270
+ in the chain.
1271
+ </param>
1272
+ <returns>The built object.</returns>
1273
+ </member>
1274
+ <member name="M:Microsoft.Practices.ObjectBuilder2.Builder.BuildUp``1(Microsoft.Practices.ObjectBuilder2.IReadWriteLocator,Microsoft.Practices.ObjectBuilder2.ILifetimeContainer,Microsoft.Practices.ObjectBuilder2.IPolicyList,Microsoft.Practices.ObjectBuilder2.IStrategyChain,System.Object,System.Object)">
1275
+ <summary>
1276
+ Performs a build operation.
1277
+ </summary>
1278
+ <remarks>
1279
+ This operation uses the strategies and permanent policies already configured
1280
+ into the builder, combined with the optional transient policies, and starts a build
1281
+ operation. Transient policies override any built-in policies, when present.
1282
+ </remarks>
1283
+ <typeparam name="TTypeToBuild">The type to build.</typeparam>
1284
+ <param name="locator">The locator to be used for this build operation.</param>
1285
+ <param name="lifetime">The <see cref="T:Microsoft.Practices.ObjectBuilder2.ILifetimeContainer"/> to use for this build operation.</param>
1286
+ <param name="policies">
1287
+ The transient policies to apply to this build. These
1288
+ policies take precedence over any permanent policies built into the builder.
1289
+ </param>
1290
+ <param name="strategies">
1291
+ The <see cref="T:Microsoft.Practices.ObjectBuilder2.IStrategyChain"/> to use for this build operation.
1292
+ </param>
1293
+ <param name="buildKey">The key of the object to build.</param>
1294
+ <param name="existing">
1295
+ The existing object to run the build chain on, if one exists.
1296
+ If null is passed, a new object instance will typically be created by some strategy
1297
+ in the chain.
1298
+ </param>
1299
+ <returns>The built object.</returns>
1300
+ </member>
1301
+ <member name="M:Microsoft.Practices.ObjectBuilder2.Builder.TearDown``1(Microsoft.Practices.ObjectBuilder2.IReadWriteLocator,Microsoft.Practices.ObjectBuilder2.ILifetimeContainer,Microsoft.Practices.ObjectBuilder2.IPolicyList,Microsoft.Practices.ObjectBuilder2.IStrategyChain,``0)">
1302
+ <summary>
1303
+ Performs an unbuild operation.
1304
+ </summary>
1305
+ <typeparam name="TItem">The type to unbuild. If not provided, it will be inferred from the
1306
+ type of item.
1307
+ </typeparam>
1308
+ <param name="locator">The locator to be used for this build operation.</param>
1309
+ <param name="lifetime">The <see cref="T:Microsoft.Practices.ObjectBuilder2.ILifetimeContainer"/> to use for this build operation.</param>
1310
+ <param name="policies">
1311
+ The transient policies to apply to this build. These
1312
+ policies take precedence over any permanent policies built into the builder.
1313
+ </param>
1314
+ <param name="strategies">
1315
+ The <see cref="T:Microsoft.Practices.ObjectBuilder2.IStrategyChain"/> to use for this build operation.
1316
+ </param>
1317
+ <param name="item">The item to tear down.</param>
1318
+ <returns>The torn down item.</returns>
1319
+ </member>
1320
+ <member name="T:Microsoft.Practices.ObjectBuilder2.LifetimeStrategy">
1321
+ <summary>
1322
+ An <see cref="T:Microsoft.Practices.ObjectBuilder2.IBuilderStrategy"/> implementation that uses
1323
+ a <see cref="T:Microsoft.Practices.ObjectBuilder2.ILifetimePolicy"/> to figure out if an object
1324
+ has already been created and to update or remove that
1325
+ object from some backing store.
1326
+ </summary>
1327
+ </member>
1328
+ <member name="M:Microsoft.Practices.ObjectBuilder2.LifetimeStrategy.PreBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
1329
+ <summary>
1330
+ Called during the chain of responsibility for a build operation. The
1331
+ PreBuildUp method is called when the chain is being executed in the
1332
+ forward direction.
1333
+ </summary>
1334
+ <param name="context">Context of the build operation.</param>
1335
+ </member>
1336
+ <member name="M:Microsoft.Practices.ObjectBuilder2.LifetimeStrategy.PostBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
1337
+ <summary>
1338
+ Called during the chain of responsibility for a build operation. The
1339
+ PostBuildUp method is called when the chain has finished the PreBuildUp
1340
+ phase and executes in reverse order from the PreBuildUp calls.
1341
+ </summary>
1342
+ <param name="context">Context of the build operation.</param>
1343
+ </member>
1344
+ <member name="T:Microsoft.Practices.ObjectBuilder2.PolicyList">
1345
+ <summary>
1346
+ A custom collection wrapper over <see cref="T:Microsoft.Practices.ObjectBuilder2.IBuilderPolicy"/> objects.
1347
+ </summary>
1348
+ </member>
1349
+ <member name="T:Microsoft.Practices.ObjectBuilder2.IPolicyList">
1350
+ <summary>
1351
+ A custom collection over <see cref="T:Microsoft.Practices.ObjectBuilder2.IBuilderPolicy"/> objects.
1352
+ </summary>
1353
+ </member>
1354
+ <member name="M:Microsoft.Practices.ObjectBuilder2.IPolicyList.Clear``1(System.Object)">
1355
+ <summary>
1356
+ Removes an individual policy type for a build key.
1357
+ </summary>
1358
+ <typeparam name="TPolicyInterface">The type the policy was registered as.</typeparam>
1359
+ <param name="buildKey">The key the policy applies.</param>
1360
+ </member>
1361
+ <member name="M:Microsoft.Practices.ObjectBuilder2.IPolicyList.Clear(System.Type,System.Object)">
1362
+ <summary>
1363
+ Removes an individual policy type for a build key.
1364
+ </summary>
1365
+ <param name="policyInterface">The type of policy to remove.</param>
1366
+ <param name="buildKey">The key the policy applies.</param>
1367
+ </member>
1368
+ <member name="M:Microsoft.Practices.ObjectBuilder2.IPolicyList.ClearAll">
1369
+ <summary>
1370
+ Removes all policies from the list.
1371
+ </summary>
1372
+ </member>
1373
+ <member name="M:Microsoft.Practices.ObjectBuilder2.IPolicyList.ClearDefault``1">
1374
+ <summary>
1375
+ Removes a default policy.
1376
+ </summary>
1377
+ <typeparam name="TPolicyInterface">The type the policy was registered as.</typeparam>
1378
+ </member>
1379
+ <member name="M:Microsoft.Practices.ObjectBuilder2.IPolicyList.ClearDefault(System.Type)">
1380
+ <summary>
1381
+ Removes a default policy.
1382
+ </summary>
1383
+ <param name="policyInterface">The type the policy was registered as.</param>
1384
+ </member>
1385
+ <member name="M:Microsoft.Practices.ObjectBuilder2.IPolicyList.Get``1(System.Object)">
1386
+ <summary>
1387
+ Gets an individual policy.
1388
+ </summary>
1389
+ <typeparam name="TPolicyInterface">The interface the policy is registered under.</typeparam>
1390
+ <param name="buildKey">The key the policy applies.</param>
1391
+ <returns>The policy in the list, if present; returns null otherwise.</returns>
1392
+ </member>
1393
+ <member name="M:Microsoft.Practices.ObjectBuilder2.IPolicyList.Get(System.Type,System.Object)">
1394
+ <summary>
1395
+ Gets an individual policy.
1396
+ </summary>
1397
+ <param name="policyInterface">The interface the policy is registered under.</param>
1398
+ <param name="buildKey">The key the policy applies.</param>
1399
+ <returns>The policy in the list, if present; returns null otherwise.</returns>
1400
+ </member>
1401
+ <member name="M:Microsoft.Practices.ObjectBuilder2.IPolicyList.Get``1(System.Object,System.Boolean)">
1402
+ <summary>
1403
+ Gets an individual policy.
1404
+ </summary>
1405
+ <typeparam name="TPolicyInterface">The interface the policy is registered under.</typeparam>
1406
+ <param name="buildKey">The key the policy applies.</param>
1407
+ <param name="localOnly">true if the policy searches local only; otherwise false to seach up the parent chain.</param>
1408
+ <returns>The policy in the list, if present; returns null otherwise.</returns>
1409
+ </member>
1410
+ <member name="M:Microsoft.Practices.ObjectBuilder2.IPolicyList.Get(System.Type,System.Object,System.Boolean)">
1411
+ <summary>
1412
+ Gets an individual policy.
1413
+ </summary>
1414
+ <param name="policyInterface">The interface the policy is registered under.</param>
1415
+ <param name="buildKey">The key the policy applies.</param>
1416
+ <param name="localOnly">true if the policy searches local only; otherwise false to seach up the parent chain.</param>
1417
+ <returns>The policy in the list, if present; returns null otherwise.</returns>
1418
+ </member>
1419
+ <member name="M:Microsoft.Practices.ObjectBuilder2.IPolicyList.GetNoDefault``1(System.Object,System.Boolean)">
1420
+ <summary>
1421
+ Get the non default policy.
1422
+ </summary>
1423
+ <typeparam name="TPolicyInterface">The interface the policy is registered under.</typeparam>
1424
+ <param name="buildKey">The key the policy applies.</param>
1425
+ <param name="localOnly">true if the policy searches local only; otherwise false to seach up the parent chain.</param>
1426
+ <returns>The policy in the list, if present; returns null otherwise.</returns>
1427
+ </member>
1428
+ <member name="M:Microsoft.Practices.ObjectBuilder2.IPolicyList.GetNoDefault(System.Type,System.Object,System.Boolean)">
1429
+ <summary>
1430
+ Get the non default policy.
1431
+ </summary>
1432
+ <param name="policyInterface">The interface the policy is registered under.</param>
1433
+ <param name="buildKey">The key the policy applies.</param>
1434
+ <param name="localOnly">true if the policy searches local only; otherwise false to seach up the parent chain.</param>
1435
+ <returns>The policy in the list, if present; returns null otherwise.</returns>
1436
+ </member>
1437
+ <member name="M:Microsoft.Practices.ObjectBuilder2.IPolicyList.Set``1(``0,System.Object)">
1438
+ <summary>
1439
+ Sets an individual policy.
1440
+ </summary>
1441
+ <typeparam name="TPolicyInterface">The interface the policy is registered under.</typeparam>
1442
+ <param name="policy">The policy to be registered.</param>
1443
+ <param name="buildKey">The key the policy applies.</param>
1444
+ </member>
1445
+ <member name="M:Microsoft.Practices.ObjectBuilder2.IPolicyList.Set(System.Type,Microsoft.Practices.ObjectBuilder2.IBuilderPolicy,System.Object)">
1446
+ <summary>
1447
+ Sets an individual policy.
1448
+ </summary>
1449
+ <param name="policyInterface">The <see cref="T:System.Type"/> of the policy.</param>
1450
+ <param name="policy">The policy to be registered.</param>
1451
+ <param name="buildKey">The key the policy applies.</param>
1452
+ </member>
1453
+ <member name="M:Microsoft.Practices.ObjectBuilder2.IPolicyList.SetDefault``1(``0)">
1454
+ <summary>
1455
+ Sets a default policy. When checking for a policy, if no specific individual policy
1456
+ is available, the default will be used.
1457
+ </summary>
1458
+ <typeparam name="TPolicyInterface">The interface to register the policy under.</typeparam>
1459
+ <param name="policy">The default policy to be registered.</param>
1460
+ </member>
1461
+ <member name="M:Microsoft.Practices.ObjectBuilder2.IPolicyList.SetDefault(System.Type,Microsoft.Practices.ObjectBuilder2.IBuilderPolicy)">
1462
+ <summary>
1463
+ Sets a default policy. When checking for a policy, if no specific individual policy
1464
+ is available, the default will be used.
1465
+ </summary>
1466
+ <param name="policyInterface">The interface to register the policy under.</param>
1467
+ <param name="policy">The default policy to be registered.</param>
1468
+ </member>
1469
+ <member name="M:Microsoft.Practices.ObjectBuilder2.PolicyList.#ctor">
1470
+ <summary>
1471
+ Initialize a new instance of a <see cref="T:Microsoft.Practices.ObjectBuilder2.PolicyList"/> class.
1472
+ </summary>
1473
+ </member>
1474
+ <member name="M:Microsoft.Practices.ObjectBuilder2.PolicyList.#ctor(Microsoft.Practices.ObjectBuilder2.IPolicyList)">
1475
+ <summary>
1476
+ Initialize a new instance of a <see cref="T:Microsoft.Practices.ObjectBuilder2.PolicyList"/> class with another policy list.
1477
+ </summary>
1478
+ <param name="innerPolicyList">An inner policy list to search.</param>
1479
+ </member>
1480
+ <member name="M:Microsoft.Practices.ObjectBuilder2.PolicyList.Clear``1(System.Object)">
1481
+ <summary>
1482
+ Removes an individual policy type for a build key.
1483
+ </summary>
1484
+ <typeparam name="TPolicyInterface">The type the policy was registered as.</typeparam>
1485
+ <param name="buildKey">The key the policy applies.</param>
1486
+ </member>
1487
+ <member name="M:Microsoft.Practices.ObjectBuilder2.PolicyList.Clear(System.Type,System.Object)">
1488
+ <summary>
1489
+ Removes an individual policy type for a build key.
1490
+ </summary>
1491
+ <param name="policyInterface">The type of policy to remove.</param>
1492
+ <param name="buildKey">The key the policy applies.</param>
1493
+ </member>
1494
+ <member name="M:Microsoft.Practices.ObjectBuilder2.PolicyList.ClearAll">
1495
+ <summary>
1496
+ Removes all policies from the list.
1497
+ </summary>
1498
+ </member>
1499
+ <member name="M:Microsoft.Practices.ObjectBuilder2.PolicyList.ClearDefault``1">
1500
+ <summary>
1501
+ Removes a default policy.
1502
+ </summary>
1503
+ <typeparam name="TPolicyInterface">The type the policy was registered as.</typeparam>
1504
+ </member>
1505
+ <member name="M:Microsoft.Practices.ObjectBuilder2.PolicyList.ClearDefault(System.Type)">
1506
+ <summary>
1507
+ Removes a default policy.
1508
+ </summary>
1509
+ <param name="policyInterface">The type the policy was registered as.</param>
1510
+ </member>
1511
+ <member name="M:Microsoft.Practices.ObjectBuilder2.PolicyList.Get``1(System.Object)">
1512
+ <summary>
1513
+ Gets an individual policy.
1514
+ </summary>
1515
+ <typeparam name="TPolicyInterface">The interface the policy is registered under.</typeparam>
1516
+ <param name="buildKey">The key the policy applies.</param>
1517
+ <returns>The policy in the list, if present; returns null otherwise.</returns>
1518
+ </member>
1519
+ <member name="M:Microsoft.Practices.ObjectBuilder2.PolicyList.Get(System.Type,System.Object)">
1520
+ <summary>
1521
+ Gets an individual policy.
1522
+ </summary>
1523
+ <param name="policyInterface">The interface the policy is registered under.</param>
1524
+ <param name="buildKey">The key the policy applies.</param>
1525
+ <returns>The policy in the list, if present; returns null otherwise.</returns>
1526
+ </member>
1527
+ <member name="M:Microsoft.Practices.ObjectBuilder2.PolicyList.Get``1(System.Object,System.Boolean)">
1528
+ <summary>
1529
+ Gets an individual policy.
1530
+ </summary>
1531
+ <typeparam name="TPolicyInterface">The interface the policy is registered under.</typeparam>
1532
+ <param name="buildKey">The key the policy applies.</param>
1533
+ <param name="localOnly">true if the policy searches local only; otherwise false to seach up the parent chain.</param>
1534
+ <returns>The policy in the list, if present; returns null otherwise.</returns>
1535
+ </member>
1536
+ <member name="M:Microsoft.Practices.ObjectBuilder2.PolicyList.Get(System.Type,System.Object,System.Boolean)">
1537
+ <summary>
1538
+ Gets an individual policy.
1539
+ </summary>
1540
+ <param name="policyInterface">The interface the policy is registered under.</param>
1541
+ <param name="buildKey">The key the policy applies.</param>
1542
+ <param name="localOnly">true if the policy searches local only; otherwise false to seach up the parent chain.</param>
1543
+ <returns>The policy in the list, if present; returns null otherwise.</returns>
1544
+ </member>
1545
+ <member name="M:Microsoft.Practices.ObjectBuilder2.PolicyList.GetNoDefault``1(System.Object,System.Boolean)">
1546
+ <summary>
1547
+ Get the non default policy.
1548
+ </summary>
1549
+ <typeparam name="TPolicyInterface">The interface the policy is registered under.</typeparam>
1550
+ <param name="buildKey">The key the policy applies.</param>
1551
+ <param name="localOnly">true if the policy searches local only; otherwise false to seach up the parent chain.</param>
1552
+ <returns>The policy in the list, if present; returns null otherwise.</returns>
1553
+ </member>
1554
+ <member name="M:Microsoft.Practices.ObjectBuilder2.PolicyList.GetNoDefault(System.Type,System.Object,System.Boolean)">
1555
+ <summary>
1556
+ Get the non default policy.
1557
+ </summary>
1558
+ <param name="policyInterface">The interface the policy is registered under.</param>
1559
+ <param name="buildKey">The key the policy applies.</param>
1560
+ <param name="localOnly">true if the policy searches local only; otherwise false to seach up the parent chain.</param>
1561
+ <returns>The policy in the list, if present; returns null otherwise.</returns>
1562
+ </member>
1563
+ <member name="M:Microsoft.Practices.ObjectBuilder2.PolicyList.Set``1(``0,System.Object)">
1564
+ <summary>
1565
+ Sets an individual policy.
1566
+ </summary>
1567
+ <typeparam name="TPolicyInterface">The interface the policy is registered under.</typeparam>
1568
+ <param name="policy">The policy to be registered.</param>
1569
+ <param name="buildKey">The key the policy applies.</param>
1570
+ </member>
1571
+ <member name="M:Microsoft.Practices.ObjectBuilder2.PolicyList.Set(System.Type,Microsoft.Practices.ObjectBuilder2.IBuilderPolicy,System.Object)">
1572
+ <summary>
1573
+ Sets an individual policy.
1574
+ </summary>
1575
+ <param name="policyInterface">The <see cref="T:System.Type"/> of the policy.</param>
1576
+ <param name="policy">The policy to be registered.</param>
1577
+ <param name="buildKey">The key the policy applies.</param>
1578
+ </member>
1579
+ <member name="M:Microsoft.Practices.ObjectBuilder2.PolicyList.SetDefault``1(``0)">
1580
+ <summary>
1581
+ Sets a default policy. When checking for a policy, if no specific individual policy
1582
+ is available, the default will be used.
1583
+ </summary>
1584
+ <typeparam name="TPolicyInterface">The interface to register the policy under.</typeparam>
1585
+ <param name="policy">The default policy to be registered.</param>
1586
+ </member>
1587
+ <member name="M:Microsoft.Practices.ObjectBuilder2.PolicyList.SetDefault(System.Type,Microsoft.Practices.ObjectBuilder2.IBuilderPolicy)">
1588
+ <summary>
1589
+ Sets a default policy. When checking for a policy, if no specific individual policy
1590
+ is available, the default will be used.
1591
+ </summary>
1592
+ <param name="policyInterface">The interface to register the policy under.</param>
1593
+ <param name="policy">The default policy to be registered.</param>
1594
+ </member>
1595
+ <member name="P:Microsoft.Practices.ObjectBuilder2.PolicyList.Count">
1596
+ <summary>
1597
+ Gets the number of items in the locator.
1598
+ </summary>
1599
+ <value>
1600
+ The number of items in the locator.
1601
+ </value>
1602
+ </member>
1603
+ <member name="T:Microsoft.Practices.ObjectBuilder2.FixedTypeResolverPolicy">
1604
+ <summary>
1605
+ An implementation of <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/> that
1606
+ calls back into the build chain to build up the dependency, passing
1607
+ a type given at compile time as its build key.
1608
+ </summary>
1609
+ </member>
1610
+ <member name="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy">
1611
+ <summary>
1612
+ A <see cref="T:Microsoft.Practices.ObjectBuilder2.IBuilderPolicy"/> that is used at build plan execution time
1613
+ to resolve a dependent value.
1614
+ </summary>
1615
+ </member>
1616
+ <member name="M:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy.Resolve(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
1617
+ <summary>
1618
+ Get the value for a dependency.
1619
+ </summary>
1620
+ <param name="context">Current build context.</param>
1621
+ <returns>The value for the dependency.</returns>
1622
+ </member>
1623
+ <member name="M:Microsoft.Practices.ObjectBuilder2.FixedTypeResolverPolicy.#ctor(System.Type)">
1624
+ <summary>
1625
+ Create a new instance storing the given type.
1626
+ </summary>
1627
+ <param name="typeToBuild">Type to resolve.</param>
1628
+ </member>
1629
+ <member name="M:Microsoft.Practices.ObjectBuilder2.FixedTypeResolverPolicy.Resolve(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
1630
+ <summary>
1631
+ Get the value for a dependency.
1632
+ </summary>
1633
+ <param name="context">Current build context.</param>
1634
+ <returns>The value for the dependency.</returns>
1635
+ </member>
1636
+ <member name="T:Microsoft.Practices.ObjectBuilder2.DependencyResolverTrackerPolicy">
1637
+ <summary>
1638
+ Implementation of <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverTrackerPolicy"/>.
1639
+ </summary>
1640
+ </member>
1641
+ <member name="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverTrackerPolicy">
1642
+ <summary>
1643
+ A builder policy that lets you keep track of the current
1644
+ resolvers and will remove them from the given policy set.
1645
+ </summary>
1646
+ </member>
1647
+ <member name="M:Microsoft.Practices.ObjectBuilder2.IDependencyResolverTrackerPolicy.AddResolverKey(System.Object)">
1648
+ <summary>
1649
+ Add a new resolver to track by key.
1650
+ </summary>
1651
+ <param name="key">Key that was used to add the resolver to the policy set.</param>
1652
+ </member>
1653
+ <member name="M:Microsoft.Practices.ObjectBuilder2.IDependencyResolverTrackerPolicy.RemoveResolvers(Microsoft.Practices.ObjectBuilder2.IPolicyList)">
1654
+ <summary>
1655
+ Remove the currently tracked resolvers from the given policy list.
1656
+ </summary>
1657
+ <param name="policies">Policy list to remove the resolvers from.</param>
1658
+ </member>
1659
+ <member name="M:Microsoft.Practices.ObjectBuilder2.DependencyResolverTrackerPolicy.AddResolverKey(System.Object)">
1660
+ <summary>
1661
+ Add a new resolver to track by key.
1662
+ </summary>
1663
+ <param name="key">Key that was used to add the resolver to the policy set.</param>
1664
+ </member>
1665
+ <member name="M:Microsoft.Practices.ObjectBuilder2.DependencyResolverTrackerPolicy.RemoveResolvers(Microsoft.Practices.ObjectBuilder2.IPolicyList)">
1666
+ <summary>
1667
+ Remove the currently tracked resolvers from the given policy list.
1668
+ </summary>
1669
+ <param name="policies">Policy list to remove the resolvers from.</param>
1670
+ </member>
1671
+ <member name="M:Microsoft.Practices.ObjectBuilder2.DependencyResolverTrackerPolicy.GetTracker(Microsoft.Practices.ObjectBuilder2.IPolicyList,System.Object)">
1672
+ <summary>
1673
+ Get an instance that implements <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverTrackerPolicy"/>,
1674
+ either the current one in the policy set or creating a new one if it doesn't
1675
+ exist.
1676
+ </summary>
1677
+ <param name="policies">Policy list to look up from.</param>
1678
+ <param name="buildKey">Build key to track.</param>
1679
+ <returns>The resolver tracker.</returns>
1680
+ </member>
1681
+ <member name="M:Microsoft.Practices.ObjectBuilder2.DependencyResolverTrackerPolicy.TrackKey(Microsoft.Practices.ObjectBuilder2.IPolicyList,System.Object,System.Object)">
1682
+ <summary>
1683
+ Add a key to be tracked to the current tracker.
1684
+ </summary>
1685
+ <param name="policies">Policy list containing the resolvers and trackers.</param>
1686
+ <param name="buildKey">Build key for the resolvers being tracked.</param>
1687
+ <param name="resolverKey">Key for the resolver.</param>
1688
+ </member>
1689
+ <member name="M:Microsoft.Practices.ObjectBuilder2.DependencyResolverTrackerPolicy.RemoveResolvers(Microsoft.Practices.ObjectBuilder2.IPolicyList,System.Object)">
1690
+ <summary>
1691
+ Remove the resolvers for the given build key.
1692
+ </summary>
1693
+ <param name="policies">Policy list containing the build key.</param>
1694
+ <param name="buildKey">Build key.</param>
1695
+ </member>
1696
+ <member name="T:Microsoft.Practices.ObjectBuilder2.BuilderStage">
1697
+ <summary>
1698
+ Enumeration to represent the object builder stages.
1699
+ </summary>
1700
+ <remarks>
1701
+ The order of the values in the enumeration is the order in which the stages are run.
1702
+ </remarks>
1703
+ </member>
1704
+ <member name="F:Microsoft.Practices.ObjectBuilder2.BuilderStage.PreCreation">
1705
+ <summary>
1706
+ Strategies in this stage run before creation. Typical work done in this stage might
1707
+ include strategies that use reflection to set policies into the context that other
1708
+ strategies would later use.
1709
+ </summary>
1710
+ </member>
1711
+ <member name="F:Microsoft.Practices.ObjectBuilder2.BuilderStage.Creation">
1712
+ <summary>
1713
+ Strategies in this stage create objects. Typically you will only have a single policy-driven
1714
+ creation strategy in this stage.
1715
+ </summary>
1716
+ </member>
1717
+ <member name="F:Microsoft.Practices.ObjectBuilder2.BuilderStage.Initialization">
1718
+ <summary>
1719
+ Strategies in this stage work on created objects. Typical work done in this stage might
1720
+ include setter injection and method calls.
1721
+ </summary>
1722
+ </member>
1723
+ <member name="F:Microsoft.Practices.ObjectBuilder2.BuilderStage.PostInitialization">
1724
+ <summary>
1725
+ Strategies in this stage work on objects that are already initialized. Typical work done in
1726
+ this stage might include looking to see if the object implements some notification interface
1727
+ to discover when its initialization stage has been completed.
1728
+ </summary>
1729
+ </member>
1730
+ <member name="T:Microsoft.Practices.ObjectBuilder2.DynamicMethodCallStrategy">
1731
+ <summary>
1732
+ A <see cref="T:Microsoft.Practices.ObjectBuilder2.BuilderStrategy"/> that generates IL to call
1733
+ chosen methods (as specified by the current <see cref="T:Microsoft.Practices.ObjectBuilder2.IMethodSelectorPolicy"/>)
1734
+ as part of object build up.
1735
+ </summary>
1736
+ </member>
1737
+ <member name="M:Microsoft.Practices.ObjectBuilder2.DynamicMethodCallStrategy.PreBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
1738
+ <summary>
1739
+ Called during the chain of responsibility for a build operation. The
1740
+ PreBuildUp method is called when the chain is being executed in the
1741
+ forward direction.
1742
+ </summary>
1743
+ <param name="context">Context of the build operation.</param>
1744
+ </member>
1745
+ <member name="M:Microsoft.Practices.ObjectBuilder2.DynamicMethodCallStrategy.ThrowOnParameterResolveFailed(System.Exception,System.String,System.String)">
1746
+ <summary>
1747
+ A helper method used by the generated IL to throw an exception
1748
+ when an injection method parameter could not be resolved.
1749
+ </summary>
1750
+ <param name="inner">Exception that provides the failure info.</param>
1751
+ <param name="methodName">Name of the method that was going to be called.</param>
1752
+ <param name="parameterName">Parameter that failed to resolve.</param>
1753
+ </member>
1754
+ <member name="T:Microsoft.Practices.ObjectBuilder2.RecoveryStack">
1755
+ <summary>
1756
+ An implementation of <see cref="T:Microsoft.Practices.ObjectBuilder2.IRecoveryStack"/>.
1757
+ </summary>
1758
+ </member>
1759
+ <member name="T:Microsoft.Practices.ObjectBuilder2.IRecoveryStack">
1760
+ <summary>
1761
+ Data structure that stores the set of <see cref="T:Microsoft.Practices.ObjectBuilder2.IRequiresRecovery"/>
1762
+ objects and executes them when requested.
1763
+ </summary>
1764
+ </member>
1765
+ <member name="M:Microsoft.Practices.ObjectBuilder2.IRecoveryStack.Add(Microsoft.Practices.ObjectBuilder2.IRequiresRecovery)">
1766
+ <summary>
1767
+ Add a new <see cref="T:Microsoft.Practices.ObjectBuilder2.IRequiresRecovery"/> object to this
1768
+ list.
1769
+ </summary>
1770
+ <param name="recovery">Object to add.</param>
1771
+ </member>
1772
+ <member name="M:Microsoft.Practices.ObjectBuilder2.IRecoveryStack.ExecuteRecovery">
1773
+ <summary>
1774
+ Execute the <see cref="M:Microsoft.Practices.ObjectBuilder2.IRequiresRecovery.Recover"/> method
1775
+ of everything in the recovery list. Recoveries will execute
1776
+ in the opposite order of add - it's a stack.
1777
+ </summary>
1778
+ </member>
1779
+ <member name="P:Microsoft.Practices.ObjectBuilder2.IRecoveryStack.Count">
1780
+ <summary>
1781
+ Return the number of recovery objects currently in the stack.
1782
+ </summary>
1783
+ </member>
1784
+ <member name="M:Microsoft.Practices.ObjectBuilder2.RecoveryStack.Add(Microsoft.Practices.ObjectBuilder2.IRequiresRecovery)">
1785
+ <summary>
1786
+ Add a new <see cref="T:Microsoft.Practices.ObjectBuilder2.IRequiresRecovery"/> object to this
1787
+ list.
1788
+ </summary>
1789
+ <param name="recovery">Object to add.</param>
1790
+ </member>
1791
+ <member name="M:Microsoft.Practices.ObjectBuilder2.RecoveryStack.ExecuteRecovery">
1792
+ <summary>
1793
+ Execute the <see cref="M:Microsoft.Practices.ObjectBuilder2.IRequiresRecovery.Recover"/> method
1794
+ of everything in the recovery list. Recoveries will execute
1795
+ in the opposite order of add - it's a stack.
1796
+ </summary>
1797
+ </member>
1798
+ <member name="P:Microsoft.Practices.ObjectBuilder2.RecoveryStack.Count">
1799
+ <summary>
1800
+ Return the number of recovery objects currently in the stack.
1801
+ </summary>
1802
+ </member>
1803
+ <member name="T:Microsoft.Practices.ObjectBuilder2.StrategyChain">
1804
+ <summary>
1805
+ Represents a chain of responsibility for builder strategies.
1806
+ </summary>
1807
+ </member>
1808
+ <member name="T:Microsoft.Practices.ObjectBuilder2.IStrategyChain">
1809
+ <summary>
1810
+ Represents a chain of responsibility for builder strategies.
1811
+ </summary>
1812
+ </member>
1813
+ <member name="M:Microsoft.Practices.ObjectBuilder2.IStrategyChain.Reverse">
1814
+ <summary>
1815
+ Reverse the order of the strategy chain.
1816
+ </summary>
1817
+ <returns>The reversed strategy chain.</returns>
1818
+ </member>
1819
+ <member name="M:Microsoft.Practices.ObjectBuilder2.IStrategyChain.ExecuteBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
1820
+ <summary>
1821
+ Execute this strategy chain against the given context,
1822
+ calling the Buildup methods on the strategies.
1823
+ </summary>
1824
+ <param name="context">Context for the build process.</param>
1825
+ <returns>The build up object</returns>
1826
+ </member>
1827
+ <member name="M:Microsoft.Practices.ObjectBuilder2.IStrategyChain.ExecuteTearDown(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
1828
+ <summary>
1829
+ Execute this strategy chain against the given context,
1830
+ calling the TearDown methods on the strategies.
1831
+ </summary>
1832
+ <param name="context">Context for the teardown process.</param>
1833
+ </member>
1834
+ <member name="M:Microsoft.Practices.ObjectBuilder2.StrategyChain.#ctor">
1835
+ <summary>
1836
+ Initialzie a new instance of the <see cref="T:Microsoft.Practices.ObjectBuilder2.StrategyChain"/> class.
1837
+ </summary>
1838
+ </member>
1839
+ <member name="M:Microsoft.Practices.ObjectBuilder2.StrategyChain.#ctor(System.Collections.IEnumerable)">
1840
+ <summary>
1841
+ Initialzie a new instance of the <see cref="T:Microsoft.Practices.ObjectBuilder2.StrategyChain"/> class with a colleciton of strategies.
1842
+ </summary>
1843
+ <param name="strategies">A collection of strategies to initialize the chain.</param>
1844
+ </member>
1845
+ <member name="M:Microsoft.Practices.ObjectBuilder2.StrategyChain.Add(Microsoft.Practices.ObjectBuilder2.IBuilderStrategy)">
1846
+ <summary>
1847
+ Adds a strategy to the chain.
1848
+ </summary>
1849
+ <param name="strategy">The strategy to add to the chain.</param>
1850
+ </member>
1851
+ <member name="M:Microsoft.Practices.ObjectBuilder2.StrategyChain.AddRange(System.Collections.IEnumerable)">
1852
+ <summary>
1853
+ Adds strategies to the chain.
1854
+ </summary>
1855
+ <param name="strategyEnumerable">The strategies to add to the chain.</param>
1856
+ </member>
1857
+ <member name="M:Microsoft.Practices.ObjectBuilder2.StrategyChain.Reverse">
1858
+ <summary>
1859
+ Reverse the order of the strategy chain.
1860
+ </summary>
1861
+ <returns>The reversed strategy chain.</returns>
1862
+ </member>
1863
+ <member name="M:Microsoft.Practices.ObjectBuilder2.StrategyChain.ExecuteBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
1864
+ <summary>
1865
+ Execute this strategy chain against the given context to build up.
1866
+ </summary>
1867
+ <param name="context">Context for the build processes.</param>
1868
+ <returns>The build up object</returns>
1869
+ </member>
1870
+ <member name="M:Microsoft.Practices.ObjectBuilder2.StrategyChain.ExecuteTearDown(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
1871
+ <summary>
1872
+ Execute this strategy chain against the given context,
1873
+ calling the TearDown methods on the strategies.
1874
+ </summary>
1875
+ <param name="context">Context for the teardown process.</param>
1876
+ </member>
1877
+ <member name="M:Microsoft.Practices.ObjectBuilder2.StrategyChain.System#Collections#Generic#IEnumerable{Microsoft#Practices#ObjectBuilder2#IBuilderStrategy}#GetEnumerator">
1878
+ <summary>
1879
+ Returns an enumerator that iterates through the collection.
1880
+ </summary>
1881
+
1882
+ <returns>
1883
+ A <see cref="T:System.Collections.Generic.IEnumerator`1"></see> that can be used to iterate through the collection.
1884
+ </returns>
1885
+ <filterpriority>1</filterpriority>
1886
+ </member>
1887
+ <member name="M:Microsoft.Practices.ObjectBuilder2.StrategyChain.GetEnumerator">
1888
+ <summary>
1889
+ Returns an enumerator that iterates through a collection.
1890
+ </summary>
1891
+
1892
+ <returns>
1893
+ An <see cref="T:System.Collections.IEnumerator"></see> object that can be used to iterate through the collection.
1894
+ </returns>
1895
+ <filterpriority>2</filterpriority>
1896
+ </member>
1897
+ <member name="T:Microsoft.Practices.ObjectBuilder2.PropertySelectorPolicy`1">
1898
+ <summary>
1899
+ An implementation of <see cref="T:Microsoft.Practices.ObjectBuilder2.IPropertySelectorPolicy"/> that looks
1900
+ for properties marked with the <typeparamref name="TResolutionAttribute"/>
1901
+ attribute that are also settable and not indexers.
1902
+ </summary>
1903
+ <typeparam name="TResolutionAttribute"></typeparam>
1904
+ </member>
1905
+ <member name="M:Microsoft.Practices.ObjectBuilder2.PropertySelectorPolicy`1.CreateResolver(System.Reflection.PropertyInfo)">
1906
+ <summary>
1907
+ Create a <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/> for the given
1908
+ property.
1909
+ </summary>
1910
+ <param name="property">Property to create resolver for.</param>
1911
+ <returns>The resolver object.</returns>
1912
+ </member>
1913
+ <member name="T:Microsoft.Practices.ObjectBuilder2.MethodSelectorPolicy`1">
1914
+ <summary>
1915
+ An implementation of <see cref="T:Microsoft.Practices.ObjectBuilder2.IMethodSelectorPolicy"/> that selects
1916
+ methods by looking for the given <typeparamref name="TMarkerAttribute"/>
1917
+ attribute on those methods.
1918
+ </summary>
1919
+ <typeparam name="TMarkerAttribute">Type of attribute used to mark methods
1920
+ to inject.</typeparam>
1921
+ </member>
1922
+ <member name="M:Microsoft.Practices.ObjectBuilder2.MethodSelectorPolicy`1.CreateResolver(System.Reflection.ParameterInfo)">
1923
+ <summary>
1924
+ Create a <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/> instance for the given
1925
+ <see cref="T:System.Reflection.ParameterInfo"/>.
1926
+ </summary>
1927
+ <param name="parameter">Parameter to create the resolver for.</param>
1928
+ <returns>The resolver object.</returns>
1929
+ </member>
1930
+ <member name="T:Microsoft.Practices.ObjectBuilder2.SingletonLifetimePolicy">
1931
+ <summary>
1932
+ A <see cref="T:Microsoft.Practices.ObjectBuilder2.ILifetimePolicy"/> that stores objects in the locator and
1933
+ lifetime container provided by the context.
1934
+ </summary>
1935
+ </member>
1936
+ <member name="T:Microsoft.Practices.ObjectBuilder2.IRequiresRecovery">
1937
+ <summary>
1938
+ This interface provides a hook for the builder context to
1939
+ implement error recovery when a builder strategy throws
1940
+ an exception. Since we can't get try/finally blocks onto
1941
+ the call stack for later stages in the chain, we instead
1942
+ add these objects to the context. If there's an exception,
1943
+ all the current IRequiresRecovery instances will have
1944
+ their Recover methods called.
1945
+ </summary>
1946
+ </member>
1947
+ <member name="M:Microsoft.Practices.ObjectBuilder2.IRequiresRecovery.Recover">
1948
+ <summary>
1949
+ A method that does whatever is needed to clean up
1950
+ as part of cleaning up after an exception.
1951
+ </summary>
1952
+ <remarks>
1953
+ Don't do anything that could throw in this method,
1954
+ it will cause later recover operations to get skipped
1955
+ and play real havok with the stack trace.
1956
+ </remarks>
1957
+ </member>
1958
+ <member name="M:Microsoft.Practices.ObjectBuilder2.SingletonLifetimePolicy.GetValue">
1959
+ <summary>
1960
+ Retrieve a value from the backing store associated with this Lifetime policy.
1961
+ </summary>
1962
+ <returns>the object desired, or null if no such object is currently stored.</returns>
1963
+ </member>
1964
+ <member name="M:Microsoft.Practices.ObjectBuilder2.SingletonLifetimePolicy.SetValue(System.Object)">
1965
+ <summary>
1966
+ Stores the given value into backing store for retrieval later.
1967
+ </summary>
1968
+ <param name="newValue">The object being stored.</param>
1969
+ </member>
1970
+ <member name="M:Microsoft.Practices.ObjectBuilder2.SingletonLifetimePolicy.RemoveValue">
1971
+ <summary>
1972
+ Remove the given object from backing store.
1973
+ </summary>
1974
+ </member>
1975
+ <member name="M:Microsoft.Practices.ObjectBuilder2.SingletonLifetimePolicy.Recover">
1976
+ <summary>
1977
+ A method that does whatever is needed to clean up
1978
+ as part of cleaning up after an exception.
1979
+ </summary>
1980
+ <remarks>
1981
+ Don't do anything that could throw in this method,
1982
+ it will cause later recover operations to get skipped
1983
+ and play real havok with the stack trace.
1984
+ </remarks>
1985
+ </member>
1986
+ <member name="T:Microsoft.Practices.ObjectBuilder2.ReadOnlyLocator">
1987
+ <summary>
1988
+ An implementation of <see cref="T:Microsoft.Practices.ObjectBuilder2.IReadableLocator"/> that wraps an existing locator
1989
+ to ensure items are not written into the locator.
1990
+ </summary>
1991
+ </member>
1992
+ <member name="M:Microsoft.Practices.ObjectBuilder2.ReadOnlyLocator.#ctor(Microsoft.Practices.ObjectBuilder2.IReadableLocator)">
1993
+ <summary>
1994
+ Initialize a new instance of the <see cref="T:Microsoft.Practices.ObjectBuilder2.ReadableLocator"/> class with an <see cref="T:Microsoft.Practices.ObjectBuilder2.IReadableLocator"/> to wrap.
1995
+ </summary>
1996
+ <param name="innerLocator">The inner locator to be wrapped.</param>
1997
+ </member>
1998
+ <member name="M:Microsoft.Practices.ObjectBuilder2.ReadOnlyLocator.Contains(System.Object)">
1999
+ <summary>
2000
+ Determine if the locator contains an object for the given key.
2001
+ </summary>
2002
+ <param name="key">The key to check.</param>
2003
+ <returns>
2004
+ true if the locator contains an object for the key; returns
2005
+ false otherwise.
2006
+ </returns>
2007
+ </member>
2008
+ <member name="M:Microsoft.Practices.ObjectBuilder2.ReadOnlyLocator.Get(System.Object)">
2009
+ <summary>
2010
+ Gets an object from the locator, registered with the given key.
2011
+ </summary>
2012
+ <param name="key">The key that the object is registered with.</param>
2013
+ <returns>The object, if found; null otherwise.</returns>
2014
+ <exception cref="T:System.ArgumentNullException">Key is null.</exception>
2015
+ </member>
2016
+ <member name="M:Microsoft.Practices.ObjectBuilder2.ReadOnlyLocator.GetEnumerator">
2017
+ <summary>
2018
+ Returns an enumerator that iterates through the locator.
2019
+ </summary>
2020
+ <returns>
2021
+ An <see cref="T:System.Collections.IEnumerator"/> object that can be used to iterate through the locator.
2022
+ </returns>
2023
+ </member>
2024
+ <member name="P:Microsoft.Practices.ObjectBuilder2.ReadOnlyLocator.Count">
2025
+ <summary>
2026
+ Gets the number of items in the locator.
2027
+ </summary>
2028
+ <value>
2029
+ The number of items in the locator.
2030
+ </value>
2031
+ </member>
2032
+ <member name="P:Microsoft.Practices.ObjectBuilder2.ReadOnlyLocator.ParentLocator">
2033
+ <summary>
2034
+ Gets the parent locator.
2035
+ </summary>
2036
+ <value>
2037
+ The parent locator.
2038
+ </value>
2039
+ </member>
2040
+ <member name="P:Microsoft.Practices.ObjectBuilder2.ReadOnlyLocator.ReadOnly">
2041
+ <summary>
2042
+ Determines if the locator is read-only.
2043
+ </summary>
2044
+ <value>
2045
+ true if the locator is read-only; otherwise, false.
2046
+ </value>
2047
+ </member>
2048
+ <member name="T:Microsoft.Practices.ObjectBuilder2.IStagedStrategyChain">
2049
+ <summary>
2050
+ This interface defines a standard method to convert any
2051
+ <see cref="T:Microsoft.Practices.ObjectBuilder2.StagedStrategyChain`1"/> regardless
2052
+ of the stage enum into a regular, flat strategy chain.
2053
+ </summary>
2054
+ </member>
2055
+ <member name="M:Microsoft.Practices.ObjectBuilder2.IStagedStrategyChain.MakeStrategyChain">
2056
+ <summary>
2057
+ Convert this <see cref="T:Microsoft.Practices.ObjectBuilder2.StagedStrategyChain`1"/> into
2058
+ a flat <see cref="T:Microsoft.Practices.ObjectBuilder2.IStrategyChain"/>.
2059
+ </summary>
2060
+ <returns>The flattened <see cref="T:Microsoft.Practices.ObjectBuilder2.IStrategyChain"/>.</returns>
2061
+ </member>
2062
+ <member name="T:Microsoft.Practices.ObjectBuilder2.IBuildPlanCreatorPolicy">
2063
+ <summary>
2064
+ A <see cref="T:Microsoft.Practices.ObjectBuilder2.IBuilderPolicy"/> that can create and return an <see cref="T:Microsoft.Practices.ObjectBuilder2.IBuildPlanPolicy"/>
2065
+ for the given build key.
2066
+ </summary>
2067
+ </member>
2068
+ <member name="M:Microsoft.Practices.ObjectBuilder2.IBuildPlanCreatorPolicy.CreatePlan(Microsoft.Practices.ObjectBuilder2.IBuilderContext,System.Object)">
2069
+ <summary>
2070
+ Create a build plan using the given context and build key.
2071
+ </summary>
2072
+ <param name="context">Current build context.</param>
2073
+ <param name="buildKey">Current build key.</param>
2074
+ <returns>The build plan.</returns>
2075
+ </member>
2076
+ <member name="T:Microsoft.Practices.ObjectBuilder2.DynamicMethodConstructorStrategy">
2077
+ <summary>
2078
+ A <see cref="T:Microsoft.Practices.ObjectBuilder2.BuilderStrategy"/> that emits IL to call constructors
2079
+ as part of creating a build plan.
2080
+ </summary>
2081
+ </member>
2082
+ <member name="M:Microsoft.Practices.ObjectBuilder2.DynamicMethodConstructorStrategy.PreBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
2083
+ <summary>
2084
+ Called during the chain of responsibility for a build operation.
2085
+ </summary>
2086
+ <remarks>Existing object is an instance of <see cref="T:Microsoft.Practices.ObjectBuilder2.DynamicBuildPlanGenerationContext"/>.</remarks>
2087
+ <param name="context">The context for the operation.</param>
2088
+ </member>
2089
+ <member name="M:Microsoft.Practices.ObjectBuilder2.DynamicMethodConstructorStrategy.ThrowForNullExistingObject(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
2090
+ <summary>
2091
+ A helper method used by the generated IL to throw an exception if
2092
+ a dependency cannot be resolved.
2093
+ </summary>
2094
+ <param name="context">The <see cref="T:Microsoft.Practices.ObjectBuilder2.IBuilderContext"/> currently being
2095
+ used for the build of this object.</param>
2096
+ </member>
2097
+ <member name="M:Microsoft.Practices.ObjectBuilder2.DynamicMethodConstructorStrategy.ThrowForResolutionFailed(System.Exception,System.String,System.String,Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
2098
+ <summary>
2099
+ A helper method used by the generated IL to throw an exception if a parameter
2100
+ fails to resolve.
2101
+ </summary>
2102
+ <param name="inner">Inner exception to throw.</param>
2103
+ <param name="parameterName">Name of the parameter that was attempted to be resolved.</param>
2104
+ <param name="constructorSignature">String describing which constructor we were calling.</param>
2105
+ <param name="context">Current build context.</param>
2106
+ </member>
2107
+ <member name="M:Microsoft.Practices.ObjectBuilder2.DynamicMethodConstructorStrategy.ThrowForAttemptingToConstructInterface(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
2108
+ <summary>
2109
+ A helper method used by the generated IL to throw an exception if
2110
+ no existing object is present, but the user is attempting to build
2111
+ an interface (usually due to the lack of a type mapping).
2112
+ </summary>
2113
+ <param name="context"></param>
2114
+ </member>
2115
+ <member name="T:Microsoft.Practices.ObjectBuilder2.BuildKeyMappingStrategy">
2116
+ <summary>
2117
+ Represents a strategy for mapping build keys in the build up operation.
2118
+ </summary>
2119
+ </member>
2120
+ <member name="M:Microsoft.Practices.ObjectBuilder2.BuildKeyMappingStrategy.PreBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
2121
+ <summary>
2122
+ Called during the chain of responsibility for a build operation. Looks for the <see cref="T:Microsoft.Practices.ObjectBuilder2.IBuildKeyMappingPolicy"/>
2123
+ and if found maps the build key for the current operation.
2124
+ </summary>
2125
+ <param name="context">The context for the operation.</param>
2126
+ </member>
2127
+ <member name="T:Microsoft.Practices.ObjectBuilder2.BuildFailedException">
2128
+ <summary>
2129
+ The exception that gets thrown if a build or teardown operation fails.
2130
+ </summary>
2131
+ </member>
2132
+ <member name="M:Microsoft.Practices.ObjectBuilder2.BuildFailedException.#ctor(Microsoft.Practices.ObjectBuilder2.IBuilderStrategy,System.Int32,System.Object,System.Exception)">
2133
+ <summary>
2134
+ Create a new <see cref="T:Microsoft.Practices.ObjectBuilder2.BuildFailedException"/> instance containing
2135
+ the information about the currently executing strategy that caused
2136
+ the exception.
2137
+ </summary>
2138
+ <param name="executingStrategy">The <see cref="T:Microsoft.Practices.ObjectBuilder2.IBuilderStrategy"/> that was
2139
+ executing at the time the exception was thrown.</param>
2140
+ <param name="executingStrategyIndex">The index of the current strategy in its
2141
+ strategy chain.</param>
2142
+ <param name="buildKey">The build key being built up.</param>
2143
+ <param name="innerException">Underlying exception.</param>
2144
+ </member>
2145
+ <member name="M:Microsoft.Practices.ObjectBuilder2.BuildFailedException.#ctor">
2146
+ <summary>
2147
+ Create a new <see cref="T:Microsoft.Practices.ObjectBuilder2.BuildFailedException"/>. Do not use this constructor, it
2148
+ does not take any of the data that makes this type useful.
2149
+ </summary>
2150
+ </member>
2151
+ <member name="M:Microsoft.Practices.ObjectBuilder2.BuildFailedException.#ctor(System.String)">
2152
+ <summary>
2153
+ Create a new <see cref="T:Microsoft.Practices.ObjectBuilder2.BuildFailedException"/>. Do not use this constructor, it
2154
+ does not take any of the data that makes this type useful.
2155
+ </summary>
2156
+ <param name="message">Error message, ignored.</param>
2157
+ </member>
2158
+ <member name="M:Microsoft.Practices.ObjectBuilder2.BuildFailedException.#ctor(System.String,System.Exception)">
2159
+ <summary>
2160
+ Create a new <see cref="T:Microsoft.Practices.ObjectBuilder2.BuildFailedException"/>. Do not use this constructor, it
2161
+ does not take any of the data that makes this type useful.
2162
+ </summary>
2163
+ <param name="message">Error message, ignored.</param>
2164
+ <param name="innerException">Inner exception.</param>
2165
+ </member>
2166
+ <member name="M:Microsoft.Practices.ObjectBuilder2.BuildFailedException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
2167
+ <summary>
2168
+ Create a new <see cref="T:Microsoft.Practices.ObjectBuilder2.BuildFailedException"/> from the serialized information.
2169
+ </summary>
2170
+ <param name="info">Serialization info.</param>
2171
+ <param name="context">Streaming context.</param>
2172
+ </member>
2173
+ <member name="M:Microsoft.Practices.ObjectBuilder2.BuildFailedException.GetObjectData(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
2174
+ <summary>
2175
+ When overridden in a derived class, sets the <see cref="T:System.Runtime.Serialization.SerializationInfo"></see> with information about the exception.
2176
+ </summary>
2177
+
2178
+ <param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext"></see> that contains contextual information about the source or destination. </param>
2179
+ <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"></see> that holds the serialized object data about the exception being thrown. </param>
2180
+ <exception cref="T:System.ArgumentNullException">The info parameter is a null reference (Nothing in Visual Basic). </exception><filterpriority>2</filterpriority><PermissionSet><IPermission class="System.Security.Permissions.FileIOPermission, mscorlib, Version=2.0.3600.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" version="1" Read="*AllFiles*" PathDiscovery="*AllFiles*" /><IPermission class="System.Security.Permissions.SecurityPermission, mscorlib, Version=2.0.3600.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" version="1" Flags="SerializationFormatter" /></PermissionSet>
2181
+ </member>
2182
+ <member name="P:Microsoft.Practices.ObjectBuilder2.BuildFailedException.ExecutingStrategy">
2183
+ <summary>
2184
+ The strategy that was executing when the exception occurred.
2185
+ </summary>
2186
+ </member>
2187
+ <member name="P:Microsoft.Practices.ObjectBuilder2.BuildFailedException.ExecutingStrategyIndex">
2188
+ <summary>
2189
+ The index of the currently executing strategy in the build chain.
2190
+ </summary>
2191
+ </member>
2192
+ <member name="P:Microsoft.Practices.ObjectBuilder2.BuildFailedException.BuildKey">
2193
+ <summary>
2194
+ The build key that was being built at the time of the exception.
2195
+ </summary>
2196
+ </member>
2197
+ <member name="P:Microsoft.Practices.ObjectBuilder2.BuildFailedException.Message">
2198
+ <summary>
2199
+ Gets a message that describes the current exception.
2200
+ </summary>
2201
+
2202
+ <returns>
2203
+ The error message that explains the reason for the exception, or an empty string("").
2204
+ </returns>
2205
+ <filterpriority>1</filterpriority>
2206
+ </member>
2207
+ <member name="T:Microsoft.Practices.ObjectBuilder2.DynamicMethodBuildPlanCreatorPolicy">
2208
+ <summary>
2209
+ An <see cref="T:Microsoft.Practices.ObjectBuilder2.IBuildPlanCreatorPolicy"/> implementation
2210
+ that constructs a build plan via dynamic IL emission.
2211
+ </summary>
2212
+ </member>
2213
+ <member name="M:Microsoft.Practices.ObjectBuilder2.DynamicMethodBuildPlanCreatorPolicy.#ctor(Microsoft.Practices.ObjectBuilder2.IStagedStrategyChain)">
2214
+ <summary>
2215
+ Construct a <see cref="T:Microsoft.Practices.ObjectBuilder2.DynamicMethodBuildPlanCreatorPolicy"/> that
2216
+ uses the given strategy chain to construct the build plan.
2217
+ </summary>
2218
+ <param name="strategies"></param>
2219
+ </member>
2220
+ <member name="M:Microsoft.Practices.ObjectBuilder2.DynamicMethodBuildPlanCreatorPolicy.CreatePlan(Microsoft.Practices.ObjectBuilder2.IBuilderContext,System.Object)">
2221
+ <summary>
2222
+ Construct a build plan.
2223
+ </summary>
2224
+ <param name="context">The current build context.</param>
2225
+ <param name="buildKey">The current build key.</param>
2226
+ <returns>The created build plan.</returns>
2227
+ </member>
2228
+ <member name="T:Microsoft.Practices.ObjectBuilder2.DynamicBuildPlanMethod">
2229
+ <summary>
2230
+ A delegate type that defines the signature of the
2231
+ dynamic method created by the build plans.
2232
+ </summary>
2233
+ <param name="context"><see cref="T:Microsoft.Practices.ObjectBuilder2.IBuilderContext"/> used to build up the object.</param>
2234
+ </member>
2235
+ <member name="T:Microsoft.Practices.ObjectBuilder2.DynamicMethodBuildPlan">
2236
+ <summary>
2237
+ An implementation of <see cref="T:Microsoft.Practices.ObjectBuilder2.IBuildPlanPolicy"/> that runs the
2238
+ given delegate to execute the plan.
2239
+ </summary>
2240
+ </member>
2241
+ <member name="T:Microsoft.Practices.ObjectBuilder2.BuildPlanStrategy">
2242
+ <summary>
2243
+ A <see cref="T:Microsoft.Practices.ObjectBuilder2.BuilderStrategy"/> that will look for a build plan
2244
+ in the current context. If it exists, it invokes it, otherwise
2245
+ it creates one and stores it for later, and invokes it.
2246
+ </summary>
2247
+ </member>
2248
+ <member name="M:Microsoft.Practices.ObjectBuilder2.BuildPlanStrategy.PreBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
2249
+ <summary>
2250
+ Called during the chain of responsibility for a build operation.
2251
+ </summary>
2252
+ <param name="context">The context for the operation.</param>
2253
+ </member>
2254
+ <member name="T:Microsoft.Practices.ObjectBuilder2.BuilderAwareStrategy">
2255
+ <summary>
2256
+ Implementation of <see cref="T:Microsoft.Practices.ObjectBuilder2.IBuilderStrategy"/> which will notify an object about
2257
+ the completion of a <see cref="M:Microsoft.Practices.ObjectBuilder2.IBuilder.BuildUp(Microsoft.Practices.ObjectBuilder2.IReadWriteLocator,Microsoft.Practices.ObjectBuilder2.ILifetimeContainer,Microsoft.Practices.ObjectBuilder2.IPolicyList,Microsoft.Practices.ObjectBuilder2.IStrategyChain,System.Object,System.Object)"/> operation, or start of a
2258
+ <see cref="M:Microsoft.Practices.ObjectBuilder2.IBuilder.TearDown``1(Microsoft.Practices.ObjectBuilder2.IReadWriteLocator,Microsoft.Practices.ObjectBuilder2.ILifetimeContainer,Microsoft.Practices.ObjectBuilder2.IPolicyList,Microsoft.Practices.ObjectBuilder2.IStrategyChain,``0)"/> operation.
2259
+ </summary>
2260
+ <remarks>
2261
+ This strategy checks the object that is passing through the builder chain to see if it
2262
+ implements IBuilderAware and if it does, it will call <see cref="M:Microsoft.Practices.ObjectBuilder2.IBuilderAware.OnBuiltUp(System.Object)"/>
2263
+ and <see cref="M:Microsoft.Practices.ObjectBuilder2.IBuilderAware.OnTearingDown"/>. This strategy is meant to be used from the
2264
+ <see cref="F:Microsoft.Practices.ObjectBuilder2.BuilderStage.PostInitialization"/> stage.
2265
+ </remarks>
2266
+ </member>
2267
+ <member name="M:Microsoft.Practices.ObjectBuilder2.BuilderAwareStrategy.PreBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
2268
+ <summary>
2269
+ Called during the chain of responsibility for a build operation. The
2270
+ PreBuildUp method is called when the chain is being executed in the
2271
+ forward direction.
2272
+ </summary>
2273
+ <param name="context">Context of the build operation.</param>
2274
+ </member>
2275
+ <member name="M:Microsoft.Practices.ObjectBuilder2.BuilderAwareStrategy.PreTearDown(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
2276
+ <summary>
2277
+ Called during the chain of responsibility for a teardown operation. The
2278
+ PreTearDown method is called when the chain is being executed in the
2279
+ forward direction.
2280
+ </summary>
2281
+ <param name="context">Context of the teardown operation.</param>
2282
+ </member>
2283
+ <member name="T:Microsoft.Practices.ObjectBuilder2.BuilderContext">
2284
+ <summary>
2285
+ Represents the context in which a build-up or tear-down operation runs.
2286
+ </summary>
2287
+ </member>
2288
+ <member name="T:Microsoft.Practices.ObjectBuilder2.IBuilderContext">
2289
+ <summary>
2290
+ Represents the context in which a build-up or tear-down operation runs.
2291
+ </summary>
2292
+ </member>
2293
+ <member name="M:Microsoft.Practices.ObjectBuilder2.IBuilderContext.CloneForNewBuild(System.Object,System.Object)">
2294
+ <summary>
2295
+ Create a new IBuilderContext which has the same strategies, locator, policies, and lifetime
2296
+ but a new build key and existing object. Used to execute recursive calls when
2297
+ building up dependencies.
2298
+ </summary>
2299
+ <param name="newBuildKey">Build key for new buildup.</param>
2300
+ <param name="newExistingObject">New exsting object for buildup.</param>
2301
+ <returns>The new context.</returns>
2302
+ </member>
2303
+ <member name="P:Microsoft.Practices.ObjectBuilder2.IBuilderContext.Strategies">
2304
+ <summary>
2305
+ Gets the head of the strategy chain.
2306
+ </summary>
2307
+ <returns>
2308
+ The strategy that's first in the chain; returns null if there are no
2309
+ strategies in the chain.
2310
+ </returns>
2311
+ </member>
2312
+ <member name="P:Microsoft.Practices.ObjectBuilder2.IBuilderContext.Lifetime">
2313
+ <summary>
2314
+ Gets the <see cref="T:Microsoft.Practices.ObjectBuilder2.ILifetimeContainer"/> associated with the build.
2315
+ </summary>
2316
+ <value>
2317
+ The <see cref="T:Microsoft.Practices.ObjectBuilder2.ILifetimeContainer"/> associated with the build.
2318
+ </value>
2319
+ </member>
2320
+ <member name="P:Microsoft.Practices.ObjectBuilder2.IBuilderContext.Locator">
2321
+ <summary>
2322
+ Gets the locator available to the strategies.
2323
+ </summary>
2324
+ <value>
2325
+ The locator available to the strategies.
2326
+ </value>
2327
+ </member>
2328
+ <member name="P:Microsoft.Practices.ObjectBuilder2.IBuilderContext.OriginalBuildKey">
2329
+ <summary>
2330
+ Gets the original build key for the build operation.
2331
+ </summary>
2332
+ <value>
2333
+ The original build key for the build operation.
2334
+ </value>
2335
+ </member>
2336
+ <member name="P:Microsoft.Practices.ObjectBuilder2.IBuilderContext.PersistentPolicies">
2337
+ <summary>
2338
+ The set of policies that were passed into this context.
2339
+ </summary>
2340
+ <remarks>This returns the policies passed into the context.
2341
+ Policies added here will remain after buildup completes.</remarks>
2342
+ <value>The persistent policies for the current context.</value>
2343
+ </member>
2344
+ <member name="P:Microsoft.Practices.ObjectBuilder2.IBuilderContext.Policies">
2345
+ <summary>
2346
+ Gets the policies for the current context.
2347
+ </summary>
2348
+ <remarks>Any policies added to this object are transient
2349
+ and will be erased at the end of the buildup.</remarks>
2350
+ <value>
2351
+ The policies for the current context.
2352
+ </value>
2353
+ </member>
2354
+ <member name="P:Microsoft.Practices.ObjectBuilder2.IBuilderContext.RecoveryStack">
2355
+ <summary>
2356
+ Gets the collection of <see cref="T:Microsoft.Practices.ObjectBuilder2.IRequiresRecovery"/> objects
2357
+ that need to execute in event of an exception.
2358
+ </summary>
2359
+ </member>
2360
+ <member name="P:Microsoft.Practices.ObjectBuilder2.IBuilderContext.BuildKey">
2361
+ <summary>
2362
+ Get the current build key for the current build operation.
2363
+ </summary>
2364
+ </member>
2365
+ <member name="P:Microsoft.Practices.ObjectBuilder2.IBuilderContext.Existing">
2366
+ <summary>
2367
+ The current object being built up or torn down.
2368
+ </summary>
2369
+ <value>
2370
+ The current object being manipulated by the build operation. May
2371
+ be null if the object hasn't been created yet.</value>
2372
+ </member>
2373
+ <member name="P:Microsoft.Practices.ObjectBuilder2.IBuilderContext.BuildComplete">
2374
+ <summary>
2375
+ Flag indicating if the build operation should continue.
2376
+ </summary>
2377
+ <value>true means that building should not call any more
2378
+ strategies, false means continue to the next strategy.</value>
2379
+ </member>
2380
+ <member name="M:Microsoft.Practices.ObjectBuilder2.BuilderContext.#ctor">
2381
+ <summary>
2382
+ Initialize a new instance of the <see cref="T:Microsoft.Practices.ObjectBuilder2.BuilderContext"/> class.
2383
+ </summary>
2384
+ </member>
2385
+ <member name="M:Microsoft.Practices.ObjectBuilder2.BuilderContext.#ctor(Microsoft.Practices.ObjectBuilder2.IStrategyChain,Microsoft.Practices.ObjectBuilder2.IReadWriteLocator,Microsoft.Practices.ObjectBuilder2.ILifetimeContainer,Microsoft.Practices.ObjectBuilder2.IPolicyList,System.Object,System.Object)">
2386
+ <summary>
2387
+ Initialize a new instance of the <see cref="T:Microsoft.Practices.ObjectBuilder2.BuilderContext"/> class with a <see cref="T:Microsoft.Practices.ObjectBuilder2.IStrategyChain"/>,
2388
+ <see cref="T:Microsoft.Practices.ObjectBuilder2.IReadWriteLocator"/>, <see cref="T:Microsoft.Practices.ObjectBuilder2.ILifetimeContainer"/>, <see cref="T:Microsoft.Practices.ObjectBuilder2.IPolicyList"/> and the
2389
+ build key used to start this build operation.
2390
+ </summary>
2391
+ <param name="chain">The <see cref="T:Microsoft.Practices.ObjectBuilder2.IStrategyChain"/> to use for this context.</param>
2392
+ <param name="locator">The <see cref="T:Microsoft.Practices.ObjectBuilder2.IReadWriteLocator"/> to use for this context.</param>
2393
+ <param name="lifetime">The <see cref="T:Microsoft.Practices.ObjectBuilder2.ILifetimeContainer"/> to use for this context.</param>
2394
+ <param name="policies">The <see cref="T:Microsoft.Practices.ObjectBuilder2.IPolicyList"/> to use for this context.</param>
2395
+ <param name="originalBuildKey">Build key to start building.</param>
2396
+ <param name="existing">The existing object to build up.</param>
2397
+ </member>
2398
+ <member name="M:Microsoft.Practices.ObjectBuilder2.BuilderContext.#ctor(Microsoft.Practices.ObjectBuilder2.IStrategyChain,Microsoft.Practices.ObjectBuilder2.IReadWriteLocator,Microsoft.Practices.ObjectBuilder2.ILifetimeContainer,Microsoft.Practices.ObjectBuilder2.IPolicyList,Microsoft.Practices.ObjectBuilder2.IPolicyList,System.Object,System.Object)">
2399
+ <summary>
2400
+ Create a new <see cref="T:Microsoft.Practices.ObjectBuilder2.BuilderContext"/> using the explicitly provided
2401
+ values.
2402
+ </summary>
2403
+ <param name="chain">The <see cref="T:Microsoft.Practices.ObjectBuilder2.IStrategyChain"/> to use for this context.</param>
2404
+ <param name="locator">The <see cref="T:Microsoft.Practices.ObjectBuilder2.IReadWriteLocator"/> to use for this context.</param>
2405
+ <param name="lifetime">The <see cref="T:Microsoft.Practices.ObjectBuilder2.ILifetimeContainer"/> to use for this context.</param>
2406
+ <param name="persistentPolicies">The set of persistent policies to use for this context.</param>
2407
+ <param name="transientPolicies">The set of transient policies to use for this context. It is
2408
+ the caller's responsibility to ensure that the transient and persistent policies are properly
2409
+ combined.</param>
2410
+ <param name="buildKey">Build key for this context.</param>
2411
+ <param name="existing">Existing object to build up.</param>
2412
+ </member>
2413
+ <member name="M:Microsoft.Practices.ObjectBuilder2.BuilderContext.CloneForNewBuild(System.Object,System.Object)">
2414
+ <summary>
2415
+ Create a new IBuilderContext which has the same strategies, locator, policies, and lifetime
2416
+ but a new build key and existing object. Used to execute recursive calls when
2417
+ building up dependencies.
2418
+ </summary>
2419
+ <param name="newBuildKey">Build key for new buildup.</param>
2420
+ <param name="newExistingObject">New exsting object for buildup.</param>
2421
+ <returns>The new context.</returns>
2422
+ </member>
2423
+ <member name="P:Microsoft.Practices.ObjectBuilder2.BuilderContext.Strategies">
2424
+ <summary>
2425
+ Gets the head of the strategy chain.
2426
+ </summary>
2427
+ <returns>
2428
+ The strategy that's first in the chain; returns null if there are no
2429
+ strategies in the chain.
2430
+ </returns>
2431
+ </member>
2432
+ <member name="P:Microsoft.Practices.ObjectBuilder2.BuilderContext.BuildKey">
2433
+ <summary>
2434
+ Get the current build key for the current build operation.
2435
+ </summary>
2436
+ </member>
2437
+ <member name="P:Microsoft.Practices.ObjectBuilder2.BuilderContext.Existing">
2438
+ <summary>
2439
+ The current object being built up or torn down.
2440
+ </summary>
2441
+ <value>
2442
+ The current object being manipulated by the build operation. May
2443
+ be null if the object hasn't been created yet.</value>
2444
+ </member>
2445
+ <member name="P:Microsoft.Practices.ObjectBuilder2.BuilderContext.Lifetime">
2446
+ <summary>
2447
+ Gets the <see cref="T:Microsoft.Practices.ObjectBuilder2.ILifetimeContainer"/> associated with the build.
2448
+ </summary>
2449
+ <value>
2450
+ The <see cref="T:Microsoft.Practices.ObjectBuilder2.ILifetimeContainer"/> associated with the build.
2451
+ </value>
2452
+ </member>
2453
+ <member name="P:Microsoft.Practices.ObjectBuilder2.BuilderContext.Locator">
2454
+ <summary>
2455
+ Gets the locator available to the strategies.
2456
+ </summary>
2457
+ <value>
2458
+ The locator available to the strategies.
2459
+ </value>
2460
+ </member>
2461
+ <member name="P:Microsoft.Practices.ObjectBuilder2.BuilderContext.OriginalBuildKey">
2462
+ <summary>
2463
+ Gets the original build key for the build operation.
2464
+ </summary>
2465
+ <value>
2466
+ The original build key for the build operation.
2467
+ </value>
2468
+ </member>
2469
+ <member name="P:Microsoft.Practices.ObjectBuilder2.BuilderContext.PersistentPolicies">
2470
+ <summary>
2471
+ The set of policies that were passed into this context.
2472
+ </summary>
2473
+ <remarks>This returns the policies passed into the context.
2474
+ Policies added here will remain after buildup completes.</remarks>
2475
+ <value>The persistent policies for the current context.</value>
2476
+ </member>
2477
+ <member name="P:Microsoft.Practices.ObjectBuilder2.BuilderContext.Policies">
2478
+ <summary>
2479
+ Gets the policies for the current context.
2480
+ </summary>
2481
+ <remarks>
2482
+ Any modifications will be transient (meaning, they will be forgotten when
2483
+ the outer BuildUp for this context is finished executing).
2484
+ </remarks>
2485
+ <value>
2486
+ The policies for the current context.
2487
+ </value>
2488
+ </member>
2489
+ <member name="P:Microsoft.Practices.ObjectBuilder2.BuilderContext.RecoveryStack">
2490
+ <summary>
2491
+ Gets the collection of <see cref="T:Microsoft.Practices.ObjectBuilder2.IRequiresRecovery"/> objects
2492
+ that need to execute in event of an exception.
2493
+ </summary>
2494
+ </member>
2495
+ <member name="P:Microsoft.Practices.ObjectBuilder2.BuilderContext.BuildComplete">
2496
+ <summary>
2497
+ Flag indicating if the build operation should continue.
2498
+ </summary>
2499
+ <value>true means that building should not call any more
2500
+ strategies, false means continue to the next strategy.</value>
2501
+ </member>
2502
+ <member name="T:Microsoft.Practices.ObjectBuilder2.IllegalInjectionMethodException">
2503
+ <summary>
2504
+ The exception thrown when injection is attempted on a method
2505
+ that is an open generic or has out or ref params.
2506
+ </summary>
2507
+ </member>
2508
+ <member name="M:Microsoft.Practices.ObjectBuilder2.IllegalInjectionMethodException.#ctor">
2509
+ <summary>
2510
+ Construct a new <see cref="T:Microsoft.Practices.ObjectBuilder2.IllegalInjectionMethodException"/> with no
2511
+ message.
2512
+ </summary>
2513
+ </member>
2514
+ <member name="M:Microsoft.Practices.ObjectBuilder2.IllegalInjectionMethodException.#ctor(System.String)">
2515
+ <summary>
2516
+ Construct a <see cref="T:Microsoft.Practices.ObjectBuilder2.IllegalInjectionMethodException"/> with the given message
2517
+ </summary>
2518
+ <param name="message">Message to return.</param>
2519
+ </member>
2520
+ <member name="M:Microsoft.Practices.ObjectBuilder2.IllegalInjectionMethodException.#ctor(System.String,System.Exception)">
2521
+ <summary>
2522
+ Construct a <see cref="T:Microsoft.Practices.ObjectBuilder2.IllegalInjectionMethodException"/> with the given message
2523
+ and inner exception.
2524
+ </summary>
2525
+ <param name="message">Message to return.</param>
2526
+ <param name="innerException">Inner exception</param>
2527
+ </member>
2528
+ <member name="M:Microsoft.Practices.ObjectBuilder2.IllegalInjectionMethodException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
2529
+ <summary>
2530
+ Used for serialization.
2531
+ </summary>
2532
+ <param name="info">Serialization info.</param>
2533
+ <param name="context">Serialization context.</param>
2534
+ </member>
2535
+ <member name="T:Microsoft.Practices.ObjectBuilder2.GenericTypeBuildKeyMappingPolicy">
2536
+ <summary>
2537
+ An implementation of <see cref="T:Microsoft.Practices.ObjectBuilder2.IBuildKeyMappingPolicy"/> that can map
2538
+ generic types.
2539
+ </summary>
2540
+ </member>
2541
+ <member name="M:Microsoft.Practices.ObjectBuilder2.GenericTypeBuildKeyMappingPolicy.#ctor(System.Object)">
2542
+ <summary>
2543
+ Create a new <see cref="T:Microsoft.Practices.ObjectBuilder2.GenericTypeBuildKeyMappingPolicy"/> instance
2544
+ that will map generic types.
2545
+ </summary>
2546
+ <param name="destinationKey">Build key to map to. This must be or contain an open generic type.</param>
2547
+ </member>
2548
+ <member name="M:Microsoft.Practices.ObjectBuilder2.GenericTypeBuildKeyMappingPolicy.Map(System.Object)">
2549
+ <summary>
2550
+ Maps the build key.
2551
+ </summary>
2552
+ <param name="buildKey">The build key to map.</param>
2553
+ <returns>The new build key.</returns>
2554
+ </member>
2555
+ <member name="T:Microsoft.Practices.ObjectBuilder2.BuildKeyMappingPolicy">
2556
+ <summary>
2557
+ Represents a builder policy for mapping build keys.
2558
+ </summary>
2559
+ </member>
2560
+ <member name="M:Microsoft.Practices.ObjectBuilder2.BuildKeyMappingPolicy.#ctor(System.Object)">
2561
+ <summary>
2562
+ Initialize a new instance of the <see cref="T:Microsoft.Practices.ObjectBuilder2.BuildKeyMappingPolicy"/> with the new build key.
2563
+ </summary>
2564
+ <param name="newBuildKey"></param>
2565
+ </member>
2566
+ <member name="M:Microsoft.Practices.ObjectBuilder2.BuildKeyMappingPolicy.Map(System.Object)">
2567
+ <summary>
2568
+ Map the <paramref name="buildKey"/> to a new build key.
2569
+ </summary>
2570
+ <param name="buildKey">The build key to mapl</param>
2571
+ <returns>The new build key.</returns>
2572
+ </member>
2573
+ <member name="T:Microsoft.Practices.ObjectBuilder2.StagedStrategyChain`1">
2574
+ <summary>
2575
+ Represents a chain of responsibility for builder strategies partitioned by stages.
2576
+ </summary>
2577
+ <typeparam name="TStageEnum">The stage enumeration to partition the strategies.</typeparam>
2578
+ </member>
2579
+ <member name="M:Microsoft.Practices.ObjectBuilder2.StagedStrategyChain`1.#ctor">
2580
+ <summary>
2581
+ Initialize a new instance of the <see cref="T:Microsoft.Practices.ObjectBuilder2.StagedStrategyChain`1"/> class.
2582
+ </summary>
2583
+ </member>
2584
+ <member name="M:Microsoft.Practices.ObjectBuilder2.StagedStrategyChain`1.#ctor(Microsoft.Practices.ObjectBuilder2.StagedStrategyChain{`0})">
2585
+ <summary>
2586
+ Initialize a new instance of the <see cref="T:Microsoft.Practices.ObjectBuilder2.StagedStrategyChain`1"/> class with an inner strategy chain to use when building.
2587
+ </summary>
2588
+ <param name="innerChain">The inner strategy chain to use first when finding strategies in the build operation.</param>
2589
+ </member>
2590
+ <member name="M:Microsoft.Practices.ObjectBuilder2.StagedStrategyChain`1.Add(Microsoft.Practices.ObjectBuilder2.IBuilderStrategy,`0)">
2591
+ <summary>
2592
+ Adds a strategy to the chain at a particular stage.
2593
+ </summary>
2594
+ <param name="strategy">The strategy to add to the chain.</param>
2595
+ <param name="stage">The stage to add the strategy.</param>
2596
+ </member>
2597
+ <member name="M:Microsoft.Practices.ObjectBuilder2.StagedStrategyChain`1.AddNew``1(`0)">
2598
+ <summary>
2599
+ Add a new strategy for the <paramref name="stage"/>.
2600
+ </summary>
2601
+ <typeparam name="TStrategy">The <see cref="T:System.Type"/> of <see cref="T:Microsoft.Practices.ObjectBuilder2.IBuilderStrategy"/></typeparam>
2602
+ <param name="stage">The stage to add the strategy.</param>
2603
+ </member>
2604
+ <member name="M:Microsoft.Practices.ObjectBuilder2.StagedStrategyChain`1.Clear">
2605
+ <summary>
2606
+ Clear the current strategy chain list.
2607
+ </summary>
2608
+ <remarks>
2609
+ This will not clear the inner strategy chain if this instane was created with one.
2610
+ </remarks>
2611
+ </member>
2612
+ <member name="M:Microsoft.Practices.ObjectBuilder2.StagedStrategyChain`1.MakeStrategyChain">
2613
+ <summary>
2614
+ Makes a strategy chain based on this instance.
2615
+ </summary>
2616
+ <returns>A new <see cref="T:Microsoft.Practices.ObjectBuilder2.StrategyChain"/>.</returns>
2617
+ </member>
2618
+ <member name="T:Microsoft.Practices.ObjectBuilder2.Locator">
2619
+ <summary>
2620
+ An implementation of <see cref="T:Microsoft.Practices.ObjectBuilder2.IReadableLocator"/> and <see cref="T:Microsoft.Practices.ObjectBuilder2.IReadWriteLocator"/>.
2621
+ </summary>
2622
+ </member>
2623
+ <member name="M:Microsoft.Practices.ObjectBuilder2.Locator.#ctor">
2624
+ <summary>
2625
+ Initializes a new instance of the <see cref="T:Microsoft.Practices.ObjectBuilder2.Locator"/> class.
2626
+ </summary>
2627
+ </member>
2628
+ <member name="M:Microsoft.Practices.ObjectBuilder2.Locator.#ctor(Microsoft.Practices.ObjectBuilder2.IReadableLocator)">
2629
+ <summary>
2630
+ Initializes a new instance of the <see cref="T:Microsoft.Practices.ObjectBuilder2.Locator"/> class as a child of the <paramref name="parentLocator"/>.
2631
+ </summary>
2632
+ <param name="parentLocator">The parent locator.</param>
2633
+ </member>
2634
+ <member name="M:Microsoft.Practices.ObjectBuilder2.Locator.Add(System.Object,System.Object)">
2635
+ <summary>
2636
+ Adds an object to the locator, with the given key.
2637
+ </summary>
2638
+ <param name="key">The key to register the object with.</param>
2639
+ <param name="value">The object to be registered.</param>
2640
+ <exception cref="T:System.ArgumentNullException">Key or value are null.</exception>
2641
+ </member>
2642
+ <member name="M:Microsoft.Practices.ObjectBuilder2.Locator.Contains(System.Object)">
2643
+ <summary>
2644
+ Determine if the locator contains an object for the given key.
2645
+ </summary>
2646
+ <param name="key">The key to check.</param>
2647
+ <returns>
2648
+ true if the locator contains an object for the key; returns
2649
+ false otherwise.
2650
+ </returns>
2651
+ </member>
2652
+ <member name="M:Microsoft.Practices.ObjectBuilder2.Locator.Get(System.Object)">
2653
+ <summary>
2654
+ Gets an object from the locator, registered with the given key.
2655
+ </summary>
2656
+ <param name="key">The key that the object is registered with.</param>
2657
+ <returns>The object, if found; null otherwise.</returns>
2658
+ <exception cref="T:System.ArgumentNullException">Key is null.</exception>
2659
+ </member>
2660
+ <member name="M:Microsoft.Practices.ObjectBuilder2.Locator.GetEnumerator">
2661
+ <summary>
2662
+ Returns an enumerator that iterates through a locator.
2663
+ </summary>
2664
+ <returns>
2665
+ An <see cref="T:System.Collections.Generic.IEnumerator`1"/> object that can be used to iterate through the locator.
2666
+ </returns>
2667
+ </member>
2668
+ <member name="M:Microsoft.Practices.ObjectBuilder2.Locator.Remove(System.Object)">
2669
+ <summary>
2670
+ Removes an object from the locator.
2671
+ </summary>
2672
+ <param name="key">The key under which the object was registered.</param>
2673
+ <returns>
2674
+ Returns true if the object was found in the locator; returns
2675
+ false otherwise.
2676
+ </returns>
2677
+ <exception cref="T:System.ArgumentNullException">Key is null.</exception>
2678
+ </member>
2679
+ <member name="P:Microsoft.Practices.ObjectBuilder2.Locator.Count">
2680
+ <summary>
2681
+ Gets the number of items in the locator.
2682
+ </summary>
2683
+ <value>
2684
+ The number of items in the locator.
2685
+ </value>
2686
+ </member>
2687
+ <member name="T:Microsoft.Practices.ObjectBuilder2.LifetimeContainer">
2688
+ <summary>
2689
+ Represents a lifetime container.
2690
+ </summary>
2691
+ <remarks>
2692
+ A lifetime container tracks the lifetime of an object, and implements
2693
+ IDisposable. When the container is disposed, any objects in the
2694
+ container which implement IDisposable are also disposed.
2695
+ </remarks>
2696
+ </member>
2697
+ <member name="T:Microsoft.Practices.ObjectBuilder2.ILifetimeContainer">
2698
+ <summary>
2699
+ Represents a lifetime container.
2700
+ </summary>
2701
+ <remarks>
2702
+ A lifetime container tracks the lifetime of an object, and implements
2703
+ IDisposable. When the container is disposed, any objects in the
2704
+ container which implement IDisposable are also disposed.
2705
+ </remarks>
2706
+ </member>
2707
+ <member name="M:Microsoft.Practices.ObjectBuilder2.ILifetimeContainer.Add(System.Object)">
2708
+ <summary>
2709
+ Adds an object to the lifetime container.
2710
+ </summary>
2711
+ <param name="item">The item to be added to the lifetime container.</param>
2712
+ </member>
2713
+ <member name="M:Microsoft.Practices.ObjectBuilder2.ILifetimeContainer.Contains(System.Object)">
2714
+ <summary>
2715
+ Determine if a given object is in the lifetime container.
2716
+ </summary>
2717
+ <param name="item">
2718
+ The item to locate in the lifetime container.
2719
+ </param>
2720
+ <returns>
2721
+ Returns true if the object is contained in the lifetime
2722
+ container; returns false otherwise.
2723
+ </returns>
2724
+ </member>
2725
+ <member name="M:Microsoft.Practices.ObjectBuilder2.ILifetimeContainer.Remove(System.Object)">
2726
+ <summary>
2727
+ Removes an item from the lifetime container. The item is
2728
+ not disposed.
2729
+ </summary>
2730
+ <param name="item">The item to be removed.</param>
2731
+ </member>
2732
+ <member name="P:Microsoft.Practices.ObjectBuilder2.ILifetimeContainer.Count">
2733
+ <summary>
2734
+ Gets the number of references in the lifetime container
2735
+ </summary>
2736
+ <value>
2737
+ The number of references in the lifetime container
2738
+ </value>
2739
+ </member>
2740
+ <member name="M:Microsoft.Practices.ObjectBuilder2.LifetimeContainer.Add(System.Object)">
2741
+ <summary>
2742
+ Adds an object to the lifetime container.
2743
+ </summary>
2744
+ <param name="item">The item to be added to the lifetime container.</param>
2745
+ </member>
2746
+ <member name="M:Microsoft.Practices.ObjectBuilder2.LifetimeContainer.Contains(System.Object)">
2747
+ <summary>
2748
+ Determine if a given object is in the lifetime container.
2749
+ </summary>
2750
+ <param name="item">
2751
+ The item to locate in the lifetime container.
2752
+ </param>
2753
+ <returns>
2754
+ Returns true if the object is contained in the lifetime
2755
+ container; returns false otherwise.
2756
+ </returns>
2757
+ </member>
2758
+ <member name="M:Microsoft.Practices.ObjectBuilder2.LifetimeContainer.Dispose">
2759
+ <summary>
2760
+ Releases the resources used by the <see cref="T:Microsoft.Practices.ObjectBuilder2.LifetimeContainer"/>.
2761
+ </summary>
2762
+ </member>
2763
+ <member name="M:Microsoft.Practices.ObjectBuilder2.LifetimeContainer.Dispose(System.Boolean)">
2764
+ <summary>
2765
+ Releases the managed resources used by the DbDataReader and optionally releases the unmanaged resources.
2766
+ </summary>
2767
+ <param name="disposing">
2768
+ true to release managed and unmanaged resources; false to release only unmanaged resources.
2769
+ </param>
2770
+ </member>
2771
+ <member name="M:Microsoft.Practices.ObjectBuilder2.LifetimeContainer.GetEnumerator">
2772
+ <summary>
2773
+ Returns an enumerator that iterates through the lifetime container.
2774
+ </summary>
2775
+ <returns>
2776
+ An <see cref="T:System.Collections.IEnumerator"/> object that can be used to iterate through the life time container.
2777
+ </returns>
2778
+ </member>
2779
+ <member name="M:Microsoft.Practices.ObjectBuilder2.LifetimeContainer.System#Collections#IEnumerable#GetEnumerator">
2780
+ <summary>
2781
+ Returns an enumerator that iterates through the lifetime container.
2782
+ </summary>
2783
+ <returns>
2784
+ An <see cref="T:System.Collections.IEnumerator"/> object that can be used to iterate through the life time container.
2785
+ </returns>
2786
+ </member>
2787
+ <member name="M:Microsoft.Practices.ObjectBuilder2.LifetimeContainer.Remove(System.Object)">
2788
+ <summary>
2789
+ Removes an item from the lifetime container. The item is
2790
+ not disposed.
2791
+ </summary>
2792
+ <param name="item">The item to be removed.</param>
2793
+ </member>
2794
+ <member name="P:Microsoft.Practices.ObjectBuilder2.LifetimeContainer.Count">
2795
+ <summary>
2796
+ Gets the number of references in the lifetime container
2797
+ </summary>
2798
+ <value>
2799
+ The number of references in the lifetime container
2800
+ </value>
2801
+ </member>
2802
+ <member name="T:Microsoft.Practices.ObjectBuilder2.SelectedMethod">
2803
+ <summary>
2804
+ Objects of this type are the return value from <see cref="M:Microsoft.Practices.ObjectBuilder2.IMethodSelectorPolicy.SelectMethods(Microsoft.Practices.ObjectBuilder2.IBuilderContext)"/>.
2805
+ It encapsulates the desired <see cref="T:System.Reflection.MethodInfo"/> with the string keys
2806
+ needed to look up the <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/> for each
2807
+ parameter.
2808
+ </summary>
2809
+ </member>
2810
+ <member name="M:Microsoft.Practices.ObjectBuilder2.SelectedMethod.#ctor(System.Reflection.MethodInfo)">
2811
+ <summary>
2812
+ Create a new <see cref="T:Microsoft.Practices.ObjectBuilder2.SelectedMethod"/> instance which
2813
+ contains the given method.
2814
+ </summary>
2815
+ <param name="method">The method</param>
2816
+ </member>
2817
+ <member name="P:Microsoft.Practices.ObjectBuilder2.SelectedMethod.Method">
2818
+ <summary>
2819
+ The constructor this object wraps.
2820
+ </summary>
2821
+ </member>
2822
+ </members>
2823
+ </doc>