castle.dynamicproxy2 2.1.0.0 → 2.2.0.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,1348 @@
1
+ <?xml version="1.0"?>
2
+ <doc>
3
+ <assembly>
4
+ <name>Castle.DynamicProxy2</name>
5
+ </assembly>
6
+ <members>
7
+ <member name="M:Castle.DynamicProxy.Contributors.MembersCollector.IsAccessible(System.Reflection.MethodBase)">
8
+ <summary>
9
+ Checks if the method is public or protected.
10
+ </summary>
11
+ <param name="method"></param>
12
+ <returns></returns>
13
+ </member>
14
+ <member name="M:Castle.DynamicProxy.Contributors.MembersCollector.AcceptMethod(System.Reflection.MethodInfo,System.Boolean,Castle.DynamicProxy.IProxyGenerationHook)">
15
+ <summary>
16
+ Performs some basic screening and invokes the <see cref="T:Castle.DynamicProxy.IProxyGenerationHook"/>
17
+ to select methods.
18
+ </summary>
19
+ <param name="method"></param>
20
+ <param name="onlyVirtuals"></param>
21
+ <param name="hook"></param>
22
+ <returns></returns>
23
+ </member>
24
+ <member name="T:Castle.DynamicProxy.Contributors.ITypeContributor">
25
+ <summary>
26
+ Interface describing elements composing generated type
27
+ </summary>
28
+ </member>
29
+ <member name="T:Castle.DynamicProxy.Generators.Emitters.SimpleAST.IndirectReference">
30
+ <summary>
31
+ Wraps a reference that is passed
32
+ ByRef and provides indirect load/store support.
33
+ </summary>
34
+ </member>
35
+ <member name="T:Castle.DynamicProxy.Generators.Emitters.SimpleAST.NewArrayExpression">
36
+ <summary>
37
+ Summary description for NewArrayExpression.
38
+ </summary>
39
+ </member>
40
+ <member name="T:Castle.DynamicProxy.Generators.Emitters.SimpleAST.ReferencesToObjectArrayExpression">
41
+ <summary>
42
+
43
+ </summary>
44
+ </member>
45
+ <member name="T:Castle.DynamicProxy.Generators.Emitters.LdcOpCodesDictionary">
46
+ <summary>s
47
+ Provides appropriate Ldc.X opcode for the type of primitive value to be loaded.
48
+ </summary>
49
+ </member>
50
+ <member name="T:Castle.DynamicProxy.Generators.Emitters.LdindOpCodesDictionary">
51
+ <summary>
52
+ Provides appropriate Ldind.X opcode for
53
+ the type of primitive value to be loaded indirectly.
54
+ </summary>
55
+ </member>
56
+ <member name="M:Castle.DynamicProxy.Generators.Emitters.MethodEmitter.CopyParametersAndReturnTypeFrom(System.Reflection.MethodInfo,Castle.DynamicProxy.Generators.Emitters.AbstractTypeEmitter)">
57
+ <summary>
58
+ Inspect the base method for generic definitions
59
+ and set the return type and the parameters
60
+ accordingly
61
+ </summary>
62
+ </member>
63
+ <member name="M:Castle.DynamicProxy.Generators.Emitters.OpCodeUtil.EmitLoadOpCodeForConstantValue(System.Reflection.Emit.ILGenerator,System.Object)">
64
+ <summary>
65
+ Emits a load opcode of the appropriate kind for a constant string or
66
+ primitive value.
67
+ </summary>
68
+ <param name="gen"></param>
69
+ <param name="value"></param>
70
+ </member>
71
+ <member name="M:Castle.DynamicProxy.Generators.Emitters.OpCodeUtil.EmitLoadOpCodeForDefaultValueOfType(System.Reflection.Emit.ILGenerator,System.Type)">
72
+ <summary>
73
+ Emits a load opcode of the appropriate kind for the constant default value of a
74
+ type, such as 0 for value types and null for reference types.
75
+ </summary>
76
+ </member>
77
+ <member name="M:Castle.DynamicProxy.Generators.Emitters.OpCodeUtil.EmitLoadIndirectOpCodeForType(System.Reflection.Emit.ILGenerator,System.Type)">
78
+ <summary>
79
+ Emits a load indirect opcode of the appropriate type for a value or object reference.
80
+ Pops a pointer off the evaluation stack, dereferences it and loads
81
+ a value of the specified type.
82
+ </summary>
83
+ <param name="gen"></param>
84
+ <param name="type"></param>
85
+ </member>
86
+ <member name="M:Castle.DynamicProxy.Generators.Emitters.OpCodeUtil.EmitStoreIndirectOpCodeForType(System.Reflection.Emit.ILGenerator,System.Type)">
87
+ <summary>
88
+ Emits a store indirectopcode of the appropriate type for a value or object reference.
89
+ Pops a value of the specified type and a pointer off the evaluation stack, and
90
+ stores the value.
91
+ </summary>
92
+ <param name="gen"></param>
93
+ <param name="type"></param>
94
+ </member>
95
+ <member name="T:Castle.DynamicProxy.Generators.Emitters.PropertiesCollection">
96
+ <summary>
97
+ Summary description for PropertiesCollection.
98
+ </summary>
99
+ </member>
100
+ <member name="T:Castle.DynamicProxy.Generators.Emitters.StindOpCodesDictionary">
101
+ <summary>
102
+ Provides appropriate Stind.X opcode
103
+ for the type of primitive value to be stored indirectly.
104
+ </summary>
105
+ </member>
106
+ <member name="M:Castle.DynamicProxy.Generators.Emitters.TypeUtil.GetAllInterfaces(System.Type[])">
107
+ <summary>
108
+ Returns list of all unique interfaces implemented given types, including their base interfaces.
109
+ </summary>
110
+ <param name="types"></param>
111
+ <returns></returns>
112
+ </member>
113
+ <member name="M:Castle.DynamicProxy.Generators.AttributeDisassembler.HandleError(System.Type,System.Exception)">
114
+ <summary>
115
+ Handles error during disassembly process
116
+ </summary>
117
+ <param name="attributeType">Type of the attribute being disassembled</param>
118
+ <param name="exception">Exception thrown during the process</param>
119
+ <returns>usually null, or (re)throws the exception</returns>
120
+ </member>
121
+ <member name="M:Castle.DynamicProxy.Generators.AttributeDisassembler.InitializeConstructorArgs(System.Type,System.Attribute,System.Object[],System.Reflection.ParameterInfo[])">
122
+ <summary>
123
+ Here we try to match a constructor argument to its value.
124
+ Since we can't get the values from the assembly, we use some heuristics to get it.
125
+ a/ we first try to match all the properties on the attributes by name (case insensitive) to the argument
126
+ b/ if we fail we try to match them by property type, with some smarts about convertions (i,e: can use Guid for string).
127
+ </summary>
128
+ </member>
129
+ <member name="M:Castle.DynamicProxy.Generators.AttributeDisassembler.ReplaceIfBetterMatch(System.Reflection.ParameterInfo,System.Reflection.PropertyInfo,System.Reflection.PropertyInfo)">
130
+ <summary>
131
+ We have the following rules here.
132
+ Try to find a matching type, failing that, if the parameter is string, get the first property (under the assumption that
133
+ we can convert it.
134
+ </summary>
135
+ </member>
136
+ <member name="M:Castle.DynamicProxy.Generators.AttributeDisassembler.ConvertValue(System.Object,System.Type)">
137
+ <summary>
138
+ Attributes can only accept simple types, so we return null for null,
139
+ if the value is passed as string we call to string (should help with converting),
140
+ otherwise, we use the value as is (enums, integer, etc).
141
+ </summary>
142
+ </member>
143
+ <member name="T:Castle.DynamicProxy.Generators.BaseProxyGenerator">
144
+ <summary>
145
+ Base class that exposes the common functionalities
146
+ to proxy generation.
147
+ </summary>
148
+ </member>
149
+ <member name="M:Castle.DynamicProxy.Generators.BaseProxyGenerator.GenerateParameterlessConstructor(Castle.DynamicProxy.Generators.Emitters.ClassEmitter,System.Type,Castle.DynamicProxy.Generators.Emitters.SimpleAST.FieldReference)">
150
+ <summary>
151
+ Generates a parameters constructor that initializes the proxy
152
+ state with <see cref="T:Castle.Core.Interceptor.StandardInterceptor"/> just to make it non-null.
153
+ <para>
154
+ This constructor is important to allow proxies to be XML serializable
155
+ </para>
156
+ </summary>
157
+ </member>
158
+ <member name="M:Castle.DynamicProxy.Generators.BaseProxyGenerator.AddMappingNoCheck(System.Type,Castle.DynamicProxy.Contributors.ITypeContributor,System.Collections.Generic.IDictionary{System.Type,Castle.DynamicProxy.Contributors.ITypeContributor})">
159
+ <summary>
160
+ It is safe to add mapping (no mapping for the interface exists)
161
+ </summary>
162
+ <param name="implementer"></param>
163
+ <param name="interface"></param>
164
+ <param name="mapping"></param>
165
+ </member>
166
+ <member name="M:Castle.DynamicProxy.Generators.CacheKey.#ctor(System.Reflection.MemberInfo,System.Type,System.Type[],Castle.DynamicProxy.ProxyGenerationOptions)">
167
+ <summary>
168
+ Initializes a new instance of the <see cref="T:Castle.DynamicProxy.Generators.CacheKey"/> class.
169
+ </summary>
170
+ <param name="target">Target element. This is either target type or target method for invocation types.</param>
171
+ <param name="type">The type of the proxy. This is base type for invocation types.</param>
172
+ <param name="interfaces">The interfaces.</param>
173
+ <param name="options">The options.</param>
174
+ </member>
175
+ <member name="M:Castle.DynamicProxy.Generators.CacheKey.#ctor(System.Type,System.Type[],Castle.DynamicProxy.ProxyGenerationOptions)">
176
+ <summary>
177
+ Initializes a new instance of the <see cref="T:Castle.DynamicProxy.Generators.CacheKey"/> class.
178
+ </summary>
179
+ <param name="target">Type of the target.</param>
180
+ <param name="interfaces">The interfaces.</param>
181
+ <param name="options">The options.</param>
182
+ </member>
183
+ <member name="M:Castle.DynamicProxy.Generators.InvocationTypeGenerator.GetCtorArgumentsAndBaseCtorToCall(System.Type,Castle.DynamicProxy.ProxyGenerationOptions,System.Reflection.ConstructorInfo@)">
184
+ <summary>
185
+ Generates the constructor for the class that extends
186
+ <see cref="T:Castle.DynamicProxy.AbstractInvocation"/>
187
+ </summary>
188
+ <param name="targetFieldType"></param>
189
+ <param name="proxyGenerationOptions"></param>
190
+ <param name="baseConstructor"></param>
191
+ </member>
192
+ <member name="T:Castle.DynamicProxy.Generators.ClassProxyGenerator">
193
+ <summary>
194
+
195
+ </summary>
196
+ </member>
197
+ <member name="T:Castle.DynamicProxy.Generators.INamingScope">
198
+ <summary>
199
+ Represents the scope of uniquenes of names for types and their members
200
+ </summary>
201
+ </member>
202
+ <member name="M:Castle.DynamicProxy.Generators.INamingScope.GetUniqueName(System.String)">
203
+ <summary>
204
+ Gets a unique name based on <paramref name="suggestedName"/>
205
+ </summary>
206
+ <param name="suggestedName">Name suggested by the caller</param>
207
+ <returns>Unique name based on <paramref name="suggestedName"/>.</returns>
208
+ <remarks>
209
+ Implementers should provide name as closely resembling <paramref name="suggestedName"/> as possible.
210
+ Generally if no collision occurs it is suggested to return suggested name, otherwise append sequential suffix.
211
+ Implementers must return deterministic names, that is when <see cref="M:Castle.DynamicProxy.Generators.INamingScope.GetUniqueName(System.String)"/> is called twice
212
+ with the same suggested name, the same returned name should be provided each time. Non-deterministic return
213
+ values, like appending random suffices will break serialization of proxies.
214
+ </remarks>
215
+ </member>
216
+ <member name="M:Castle.DynamicProxy.Generators.INamingScope.SafeSubScope">
217
+ <summary>
218
+ Returns new, disposable naming scope. It is responsibilty of the caller to make sure that no naming collision
219
+ with enclosing scope, or other subscopes is possible.
220
+ </summary>
221
+ <returns>New naming scope.</returns>
222
+ </member>
223
+ <member name="T:Castle.DynamicProxy.Generators.InterfaceProxyWithTargetGenerator">
224
+ <summary>
225
+
226
+ </summary>
227
+ </member>
228
+ <member name="M:Castle.DynamicProxy.Generators.MetaEvent.#ctor(System.String,System.Type,System.Type,Castle.DynamicProxy.Generators.MetaMethod,Castle.DynamicProxy.Generators.MetaMethod,System.Reflection.EventAttributes)">
229
+ <summary>
230
+ Initializes a new instance of the <see cref="T:Castle.DynamicProxy.Generators.MetaEvent"/> class.
231
+ </summary>
232
+ <param name="name">The name.</param>
233
+ <param name="declaringType">Type declaring the original event being overriten, or null.</param>
234
+ <param name="eventDelegateType"></param>
235
+ <param name="adder">The add method.</param>
236
+ <param name="remover">The remove method.</param>
237
+ <param name="attributes">The attributes.</param>
238
+ </member>
239
+ <member name="T:Castle.DynamicProxy.Generators.MethodFinder">
240
+ <summary>
241
+ Returns the methods implemented by a type. Use this instead of Type.GetMethods() to work around a CLR issue
242
+ where duplicate MethodInfos are returned by Type.GetMethods() after a token of a generic type's method was loaded.
243
+ </summary>
244
+ </member>
245
+ <member name="T:Castle.DynamicProxy.Tokens.InvocationMethods">
246
+ <summary>
247
+ Holds <see cref="T:System.Reflection.MethodInfo"/> objects representing methods of <see cref="T:Castle.DynamicProxy.AbstractInvocation"/> class.
248
+ </summary>
249
+ </member>
250
+ <member name="T:Castle.DynamicProxy.IProxyGenerationHook">
251
+ <summary>
252
+ Used during the target type inspection process. Implementors have a chance to customize the
253
+ proxy generation process.
254
+ </summary>
255
+ </member>
256
+ <member name="M:Castle.DynamicProxy.IProxyGenerationHook.ShouldInterceptMethod(System.Type,System.Reflection.MethodInfo)">
257
+ <summary>
258
+ Invoked by the generation process to determine if the specified method should be proxied.
259
+ </summary>
260
+ <param name="type">The type which declares the given method.</param>
261
+ <param name="methodInfo">The method to inspect.</param>
262
+ <returns>True if the given method should be proxied; false otherwise.</returns>
263
+ </member>
264
+ <member name="M:Castle.DynamicProxy.IProxyGenerationHook.NonVirtualMemberNotification(System.Type,System.Reflection.MemberInfo)">
265
+ <summary>
266
+ Invoked by the generation process to notify that a member was not marked as virtual.
267
+ </summary>
268
+ <param name="type">The type which declares the non-virtual member.</param>
269
+ <param name="memberInfo">The non-virtual member.</param>
270
+ <remarks>
271
+ Non-virtual members cannot be proxied. This method gives an opportunity to inspect
272
+ any non-virtual member of a type that has been requested to be proxied, and if
273
+ appropriate - throw an exception to notify the caller.
274
+ </remarks>
275
+ </member>
276
+ <member name="M:Castle.DynamicProxy.IProxyGenerationHook.MethodsInspected">
277
+ <summary>
278
+ Invoked by the generation process to notify that the whole process has completed.
279
+ </summary>
280
+ </member>
281
+ <member name="M:Castle.DynamicProxy.AttributeUtil.AddDisassembler``1(Castle.DynamicProxy.IAttributeDisassembler)">
282
+ <summary>
283
+ Registers custom disassembler to handle disassembly of specified type of attributes.
284
+ </summary>
285
+ <typeparam name="TAttribute">Type of attributes to handle</typeparam>
286
+ <param name="disassembler">Disassembler converting existing instances of Attributes to CustomAttributeBuilders</param>
287
+ <remarks>
288
+ When disassembling an attribute Dynamic Proxy will first check if an custom disassembler has been registered to handle attributes of that type,
289
+ and if none is found, it'll use the <see cref="P:Castle.DynamicProxy.AttributeUtil.FallbackDisassembler"/>.
290
+ </remarks>
291
+ </member>
292
+ <member name="M:Castle.DynamicProxy.AttributeUtil.ShouldSkipAttributeReplication(System.Type)">
293
+ <summary>
294
+ Attributes should be replicated if they are non-inheritable,
295
+ but there are some special cases where the attributes means
296
+ something to the CLR, where they should be skipped.
297
+ </summary>
298
+ </member>
299
+ <member name="T:Castle.DynamicProxy.DefaultProxyBuilder">
300
+ <summary>
301
+ Default implementation of <see cref="T:Castle.DynamicProxy.IProxyBuilder"/> interface producing in-memory proxy assemblies.
302
+ </summary>
303
+ </member>
304
+ <member name="T:Castle.DynamicProxy.IProxyBuilder">
305
+ <summary>
306
+ Abstracts the implementation of proxy type construction.
307
+ </summary>
308
+ </member>
309
+ <member name="M:Castle.DynamicProxy.IProxyBuilder.CreateClassProxy(System.Type,Castle.DynamicProxy.ProxyGenerationOptions)">
310
+ <summary>
311
+ Creates a proxy type for given <paramref name="classToProxy"/>, using <paramref name="options"/> provided.
312
+ </summary>
313
+ <param name="classToProxy">The class type to proxy.</param>
314
+ <param name="options">The proxy generation options.</param>
315
+ <returns>The generated proxy type.</returns>
316
+ <exception cref="T:Castle.DynamicProxy.Generators.GeneratorException">Thrown when <paramref name="classToProxy"/> is a generic type definition.</exception>
317
+ <exception cref="T:Castle.DynamicProxy.Generators.GeneratorException">Thrown when <paramref name="classToProxy"/> is not public.
318
+ Note that to avoid this exception, you can mark offending type internal, and define <see cref="T:System.Runtime.CompilerServices.InternalsVisibleToAttribute"/>
319
+ pointing to Castle Dynamic Proxy assembly, in assembly containing that type, if this is appropriate.</exception>
320
+ <seealso cref="T:Castle.DynamicProxy.Generators.ClassProxyGenerator"/>
321
+ </member>
322
+ <member name="M:Castle.DynamicProxy.IProxyBuilder.CreateClassProxy(System.Type,System.Type[],Castle.DynamicProxy.ProxyGenerationOptions)">
323
+ <summary>
324
+ Creates a proxy type for given <paramref name="classToProxy"/>, implementing <paramref name="additionalInterfacesToProxy"/>, using <paramref name="options"/> provided.
325
+ </summary>
326
+ <param name="classToProxy">The class type to proxy.</param>
327
+ <param name="additionalInterfacesToProxy">Additional interface types to proxy.</param>
328
+ <param name="options">The proxy generation options.</param>
329
+ <returns>The generated proxy type.</returns>
330
+ <remarks>
331
+ Implementers should return a proxy type for the specified class and interfaces.
332
+ Additional interfaces should be only 'mark' interfaces, that is, they should work like interface proxy without target. (See <see cref="M:Castle.DynamicProxy.IProxyBuilder.CreateInterfaceProxyTypeWithoutTarget(System.Type,System.Type[],Castle.DynamicProxy.ProxyGenerationOptions)"/> method.)
333
+ </remarks>
334
+ <exception cref="T:Castle.DynamicProxy.Generators.GeneratorException">Thrown when <paramref name="classToProxy"/> or any of <paramref name="additionalInterfacesToProxy"/> is a generic type definition.</exception>
335
+ <exception cref="T:Castle.DynamicProxy.Generators.GeneratorException">Thrown when <paramref name="classToProxy"/> or any of <paramref name="additionalInterfacesToProxy"/> is not public.
336
+ Note that to avoid this exception, you can mark offending type internal, and define <see cref="T:System.Runtime.CompilerServices.InternalsVisibleToAttribute"/>
337
+ pointing to Castle Dynamic Proxy assembly, in assembly containing that type, if this is appropriate.</exception>
338
+ <seealso cref="T:Castle.DynamicProxy.Generators.ClassProxyGenerator"/>
339
+ </member>
340
+ <member name="M:Castle.DynamicProxy.IProxyBuilder.CreateClassProxyType(System.Type,System.Type[],Castle.DynamicProxy.ProxyGenerationOptions)">
341
+ <summary>
342
+ Creates a proxy type for given <paramref name="classToProxy"/>, implementing <paramref name="additionalInterfacesToProxy"/>, using <paramref name="options"/> provided.
343
+ </summary>
344
+ <param name="classToProxy">The class type to proxy.</param>
345
+ <param name="additionalInterfacesToProxy">Additional interface types to proxy.</param>
346
+ <param name="options">The proxy generation options.</param>
347
+ <returns>The generated proxy type.</returns>
348
+ <remarks>
349
+ Implementers should return a proxy type for the specified class and interfaces.
350
+ Additional interfaces should be only 'mark' interfaces, that is, they should work like interface proxy without target. (See <see cref="M:Castle.DynamicProxy.IProxyBuilder.CreateInterfaceProxyTypeWithoutTarget(System.Type,System.Type[],Castle.DynamicProxy.ProxyGenerationOptions)"/> method.)
351
+ </remarks>
352
+ <exception cref="T:Castle.DynamicProxy.Generators.GeneratorException">Thrown when <paramref name="classToProxy"/> or any of <paramref name="additionalInterfacesToProxy"/> is a generic type definition.</exception>
353
+ <exception cref="T:Castle.DynamicProxy.Generators.GeneratorException">Thrown when <paramref name="classToProxy"/> or any of <paramref name="additionalInterfacesToProxy"/> is not public.
354
+ Note that to avoid this exception, you can mark offending type internal, and define <see cref="T:System.Runtime.CompilerServices.InternalsVisibleToAttribute"/>
355
+ pointing to Castle Dynamic Proxy assembly, in assembly containing that type, if this is appropriate.</exception>
356
+ <seealso cref="T:Castle.DynamicProxy.Generators.ClassProxyGenerator"/>
357
+ </member>
358
+ <member name="M:Castle.DynamicProxy.IProxyBuilder.CreateInterfaceProxyTypeWithTarget(System.Type,System.Type[],System.Type,Castle.DynamicProxy.ProxyGenerationOptions)">
359
+ <summary>
360
+ Creates a proxy type that proxies calls to <paramref name="interfaceToProxy"/> members on <paramref name="targetType"/>, implementing <paramref name="additionalInterfacesToProxy"/>, using <paramref name="options"/> provided.
361
+ </summary>
362
+ <param name="interfaceToProxy">The interface type to proxy.</param>
363
+ <param name="additionalInterfacesToProxy">Additional interface types to proxy.</param>
364
+ <param name="targetType">Type implementing <paramref name="interfaceToProxy"/> on which calls to the interface members should be intercepted.</param>
365
+ <param name="options">The proxy generation options.</param>
366
+ <returns>The generated proxy type.</returns>
367
+ <remarks>
368
+ Implementers should return a proxy type for the specified interface that 'proceeds' executions to the specified target.
369
+ Additional interfaces should be only 'mark' interfaces, that is, they should work like interface proxy without target. (See <see cref="M:Castle.DynamicProxy.IProxyBuilder.CreateInterfaceProxyTypeWithoutTarget(System.Type,System.Type[],Castle.DynamicProxy.ProxyGenerationOptions)"/> method.)
370
+ </remarks>
371
+ <exception cref="T:Castle.DynamicProxy.Generators.GeneratorException">Thrown when <paramref name="interfaceToProxy"/> or any of <paramref name="additionalInterfacesToProxy"/> is a generic type definition.</exception>
372
+ <exception cref="T:Castle.DynamicProxy.Generators.GeneratorException">Thrown when <paramref name="interfaceToProxy"/> or any of <paramref name="additionalInterfacesToProxy"/> is not public.
373
+ Note that to avoid this exception, you can mark offending type internal, and define <see cref="T:System.Runtime.CompilerServices.InternalsVisibleToAttribute"/>
374
+ pointing to Castle Dynamic Proxy assembly, in assembly containing that type, if this is appropriate.</exception>
375
+ <seealso cref="T:Castle.DynamicProxy.Generators.InterfaceProxyWithTargetGenerator"/>
376
+ </member>
377
+ <member name="M:Castle.DynamicProxy.IProxyBuilder.CreateInterfaceProxyTypeWithoutTarget(System.Type,System.Type[],Castle.DynamicProxy.ProxyGenerationOptions)">
378
+ <summary>
379
+ Creates a proxy type for given <paramref name="interfaceToProxy"/> that delegates all calls to the provided interceptors.
380
+ </summary>
381
+ <param name="interfaceToProxy">The interface type to proxy.</param>
382
+ <param name="additionalInterfacesToProxy">Additional interface types to proxy.</param>
383
+ <param name="options">The proxy generation options.</param>
384
+ <returns>The generated proxy type.</returns>
385
+ <remarks>
386
+ Implementers should return a proxy type for the specified interface and additional interfaces that delegate all executions to the specified interceptors.
387
+ </remarks>
388
+ <exception cref="T:Castle.DynamicProxy.Generators.GeneratorException">Thrown when <paramref name="interfaceToProxy"/> or any of <paramref name="additionalInterfacesToProxy"/> is a generic type definition.</exception>
389
+ <exception cref="T:Castle.DynamicProxy.Generators.GeneratorException">Thrown when <paramref name="interfaceToProxy"/> or any of <paramref name="additionalInterfacesToProxy"/> is not public.
390
+ Note that to avoid this exception, you can mark offending type internal, and define <see cref="T:System.Runtime.CompilerServices.InternalsVisibleToAttribute"/>
391
+ pointing to Castle Dynamic Proxy assembly, in assembly containing that type, if this is appropriate.</exception>
392
+ <seealso cref="T:Castle.DynamicProxy.Generators.InterfaceProxyWithoutTargetGenerator"/>
393
+ </member>
394
+ <member name="M:Castle.DynamicProxy.IProxyBuilder.CreateInterfaceProxyTypeWithTargetInterface(System.Type,System.Type[],Castle.DynamicProxy.ProxyGenerationOptions)">
395
+ <summary>
396
+ Creates a proxy type for given <paramref name="interfaceToProxy"/> and <parmaref name="additionalInterfacesToProxy"/> that delegates all calls to the provided interceptors and allows interceptors to switch the actual target of invocation.
397
+ </summary>
398
+ <param name="interfaceToProxy">The interface type to proxy.</param>
399
+ <param name="additionalInterfacesToProxy">Additional interface types to proxy.</param>
400
+ <param name="options">The proxy generation options.</param>
401
+ <returns>The generated proxy type.</returns>
402
+ <remarks>
403
+ Implementers should return a proxy type for the specified interface(s) that delegate all executions to the specified interceptors
404
+ and uses an instance of the interface as their targets (i.e. <see cref="P:Castle.Core.Interceptor.IInvocation.InvocationTarget"/>), rather than a class. All <see cref="T:Castle.Core.Interceptor.IInvocation"/> classes should then implement <see cref="T:Castle.Core.Interceptor.IChangeProxyTarget"/> interface,
405
+ to allow interceptors to switch invocation target with instance of another type implementing called interface.
406
+ </remarks>
407
+ <exception cref="T:Castle.DynamicProxy.Generators.GeneratorException">Thrown when <paramref name="interfaceToProxy"/> or any of <paramref name="additionalInterfacesToProxy"/> is a generic type definition.</exception>
408
+ <exception cref="T:Castle.DynamicProxy.Generators.GeneratorException">Thrown when <paramref name="interfaceToProxy"/> or any of <paramref name="additionalInterfacesToProxy"/> is not public.
409
+ Note that to avoid this exception, you can mark offending type internal, and define <see cref="T:System.Runtime.CompilerServices.InternalsVisibleToAttribute"/>
410
+ pointing to Castle Dynamic Proxy assembly, in assembly containing that type, if this is appropriate.</exception>
411
+ <seealso cref="T:Castle.DynamicProxy.Generators.InterfaceProxyWithTargetInterfaceGenerator"/>
412
+ </member>
413
+ <member name="P:Castle.DynamicProxy.IProxyBuilder.Logger">
414
+ <summary>
415
+ Gets or sets the <see cref="T:Castle.Core.Logging.ILogger"/> that this <see cref="T:Castle.DynamicProxy.ProxyGenerator"/> logs to.
416
+ </summary>
417
+ </member>
418
+ <member name="P:Castle.DynamicProxy.IProxyBuilder.ModuleScope">
419
+ <summary>
420
+ Gets the <see cref="P:Castle.DynamicProxy.IProxyBuilder.ModuleScope"/> associated with this builder.
421
+ </summary>
422
+ <value>The module scope associated with this builder.</value>
423
+ </member>
424
+ <member name="M:Castle.DynamicProxy.DefaultProxyBuilder.#ctor">
425
+ <summary>
426
+ Initializes a new instance of the <see cref="T:Castle.DynamicProxy.DefaultProxyBuilder"/> class with new <see cref="T:Castle.DynamicProxy.ModuleScope"/>.
427
+ </summary>
428
+ </member>
429
+ <member name="M:Castle.DynamicProxy.DefaultProxyBuilder.#ctor(Castle.DynamicProxy.ModuleScope)">
430
+ <summary>
431
+ Initializes a new instance of the <see cref="T:Castle.DynamicProxy.DefaultProxyBuilder"/> class.
432
+ </summary>
433
+ <param name="scope">The module scope for generated proxy types.</param>
434
+ </member>
435
+ <member name="M:Castle.DynamicProxy.InternalsHelper.IsInternalToDynamicProxy(System.Reflection.Assembly)">
436
+ <summary>
437
+ Determines whether this assembly has internals visible to dynamic proxy.
438
+ </summary>
439
+ <param name="asm">The assembly to inspect.</param>
440
+ </member>
441
+ <member name="M:Castle.DynamicProxy.InternalsHelper.IsInternal(System.Reflection.MethodInfo)">
442
+ <summary>
443
+ Determines whether the specified method is internal.
444
+ </summary>
445
+ <param name="method">The method.</param>
446
+ <returns>
447
+ <c>true</c> if the specified method is internal; otherwise, <c>false</c>.
448
+ </returns>
449
+ </member>
450
+ <member name="M:Castle.DynamicProxy.MixinData.#ctor(System.Collections.Generic.IEnumerable{System.Object})">
451
+ <summary>
452
+ Because we need to cache the types based on the mixed in mixins, we do the following here:
453
+ - Get all the mixin interfaces
454
+ - Sort them by full name
455
+ - Return them by position
456
+
457
+ The idea is to have reproducable behavior for the case that mixins are registered in different orders.
458
+ This method is here because it is required
459
+ </summary>
460
+ </member>
461
+ <member name="T:Castle.DynamicProxy.ModuleScope">
462
+ <summary>
463
+ Summary description for ModuleScope.
464
+ </summary>
465
+ </member>
466
+ <member name="F:Castle.DynamicProxy.ModuleScope.DEFAULT_FILE_NAME">
467
+ <summary>
468
+ The default file name used when the assembly is saved using <see cref="F:Castle.DynamicProxy.ModuleScope.DEFAULT_FILE_NAME"/>.
469
+ </summary>
470
+ </member>
471
+ <member name="F:Castle.DynamicProxy.ModuleScope.DEFAULT_ASSEMBLY_NAME">
472
+ <summary>
473
+ The default assembly (simple) name used for the assemblies generated by a <see cref="T:Castle.DynamicProxy.ModuleScope"/> instance.
474
+ </summary>
475
+ </member>
476
+ <member name="M:Castle.DynamicProxy.ModuleScope.#ctor">
477
+ <summary>
478
+ Initializes a new instance of the <see cref="T:Castle.DynamicProxy.ModuleScope"/> class; assemblies created by this instance will not be saved.
479
+ </summary>
480
+ </member>
481
+ <member name="M:Castle.DynamicProxy.ModuleScope.#ctor(System.Boolean)">
482
+ <summary>
483
+ Initializes a new instance of the <see cref="T:Castle.DynamicProxy.ModuleScope"/> class, allowing to specify whether the assemblies generated by this instance
484
+ should be saved.
485
+ </summary>
486
+ <param name="savePhysicalAssembly">If set to <c>true</c> saves the generated module.</param>
487
+ </member>
488
+ <member name="M:Castle.DynamicProxy.ModuleScope.#ctor(System.Boolean,System.String,System.String,System.String,System.String)">
489
+ <summary>
490
+ Initializes a new instance of the <see cref="T:Castle.DynamicProxy.ModuleScope"/> class, allowing to specify whether the assemblies generated by this instance
491
+ should be saved and what simple names are to be assigned to them.
492
+ </summary>
493
+ <param name="savePhysicalAssembly">If set to <c>true</c> saves the generated module.</param>
494
+ <param name="strongAssemblyName">The simple name of the strong-named assembly generated by this <see cref="T:Castle.DynamicProxy.ModuleScope"/>.</param>
495
+ <param name="strongModulePath">The path and file name of the manifest module of the strong-named assembly generated by this <see cref="T:Castle.DynamicProxy.ModuleScope"/>.</param>
496
+ <param name="weakAssemblyName">The simple name of the weak-named assembly generated by this <see cref="T:Castle.DynamicProxy.ModuleScope"/>.</param>
497
+ <param name="weakModulePath">The path and file name of the manifest module of the weak-named assembly generated by this <see cref="T:Castle.DynamicProxy.ModuleScope"/>.</param>
498
+ </member>
499
+ <member name="M:Castle.DynamicProxy.ModuleScope.#ctor(System.Boolean,Castle.DynamicProxy.Generators.INamingScope,System.String,System.String,System.String,System.String)">
500
+ <summary>
501
+ Initializes a new instance of the <see cref="T:Castle.DynamicProxy.ModuleScope"/> class, allowing to specify whether the assemblies generated by this instance
502
+ should be saved and what simple names are to be assigned to them.
503
+ </summary>
504
+ <param name="savePhysicalAssembly">If set to <c>true</c> saves the generated module.</param>
505
+ <param name="namingScope">Naming scope used to provide unique names to generated types and their members (usually via sub-scopes).</param>
506
+ <param name="strongAssemblyName">The simple name of the strong-named assembly generated by this <see cref="T:Castle.DynamicProxy.ModuleScope"/>.</param>
507
+ <param name="strongModulePath">The path and file name of the manifest module of the strong-named assembly generated by this <see cref="T:Castle.DynamicProxy.ModuleScope"/>.</param>
508
+ <param name="weakAssemblyName">The simple name of the weak-named assembly generated by this <see cref="T:Castle.DynamicProxy.ModuleScope"/>.</param>
509
+ <param name="weakModulePath">The path and file name of the manifest module of the weak-named assembly generated by this <see cref="T:Castle.DynamicProxy.ModuleScope"/>.</param>
510
+ </member>
511
+ <member name="M:Castle.DynamicProxy.ModuleScope.GetFromCache(Castle.DynamicProxy.Generators.CacheKey)">
512
+ <summary>
513
+ Returns a type from this scope's type cache, or null if the key cannot be found.
514
+ </summary>
515
+ <param name="key">The key to be looked up in the cache.</param>
516
+ <returns>The type from this scope's type cache matching the key, or null if the key cannot be found</returns>
517
+ </member>
518
+ <member name="M:Castle.DynamicProxy.ModuleScope.RegisterInCache(Castle.DynamicProxy.Generators.CacheKey,System.Type)">
519
+ <summary>
520
+ Registers a type in this scope's type cache.
521
+ </summary>
522
+ <param name="key">The key to be associated with the type.</param>
523
+ <param name="type">The type to be stored in the cache.</param>
524
+ </member>
525
+ <member name="M:Castle.DynamicProxy.ModuleScope.GetKeyPair">
526
+ <summary>
527
+ Gets the key pair used to sign the strong-named assembly generated by this <see cref="T:Castle.DynamicProxy.ModuleScope"/>.
528
+ </summary>
529
+ <returns></returns>
530
+ </member>
531
+ <member name="M:Castle.DynamicProxy.ModuleScope.ObtainDynamicModule(System.Boolean)">
532
+ <summary>
533
+ Gets the specified module generated by this scope, creating a new one if none has yet been generated.
534
+ </summary>
535
+ <param name="isStrongNamed">If set to true, a strong-named module is returned; otherwise, a weak-named module is returned.</param>
536
+ <returns>A strong-named or weak-named module generated by this scope, as specified by the <paramref name="isStrongNamed"/> parameter.</returns>
537
+ </member>
538
+ <member name="M:Castle.DynamicProxy.ModuleScope.ObtainDynamicModuleWithStrongName">
539
+ <summary>
540
+ Gets the strong-named module generated by this scope, creating a new one if none has yet been generated.
541
+ </summary>
542
+ <returns>A strong-named module generated by this scope.</returns>
543
+ </member>
544
+ <member name="M:Castle.DynamicProxy.ModuleScope.ObtainDynamicModuleWithWeakName">
545
+ <summary>
546
+ Gets the weak-named module generated by this scope, creating a new one if none has yet been generated.
547
+ </summary>
548
+ <returns>A weak-named module generated by this scope.</returns>
549
+ </member>
550
+ <member name="P:Castle.DynamicProxy.ModuleScope.Lock">
551
+ <summary>
552
+ Users of this <see cref="T:Castle.DynamicProxy.ModuleScope"/> should use this lock when accessing the cache.
553
+ </summary>
554
+ </member>
555
+ <member name="P:Castle.DynamicProxy.ModuleScope.StrongNamedModule">
556
+ <summary>
557
+ Gets the strong-named module generated by this scope, or <see langword="null"/> if none has yet been generated.
558
+ </summary>
559
+ <value>The strong-named module generated by this scope, or <see langword="null"/> if none has yet been generated.</value>
560
+ </member>
561
+ <member name="P:Castle.DynamicProxy.ModuleScope.StrongNamedModuleName">
562
+ <summary>
563
+ Gets the file name of the strongly named module generated by this scope.
564
+ </summary>
565
+ <value>The file name of the strongly named module generated by this scope.</value>
566
+ </member>
567
+ <member name="P:Castle.DynamicProxy.ModuleScope.StrongNamedModuleDirectory">
568
+ <summary>
569
+ Gets the directory where the strongly named module generated by this scope will be saved, or <see langword="null"/> if the current directory
570
+ is used.
571
+ </summary>
572
+ <value>The directory where the strongly named module generated by this scope will be saved when <see cref="!:SaveAssembly()"/> is called
573
+ (if this scope was created to save modules).</value>
574
+ </member>
575
+ <member name="P:Castle.DynamicProxy.ModuleScope.WeakNamedModule">
576
+ <summary>
577
+ Gets the weak-named module generated by this scope, or <see langword="null"/> if none has yet been generated.
578
+ </summary>
579
+ <value>The weak-named module generated by this scope, or <see langword="null"/> if none has yet been generated.</value>
580
+ </member>
581
+ <member name="P:Castle.DynamicProxy.ModuleScope.WeakNamedModuleName">
582
+ <summary>
583
+ Gets the file name of the weakly named module generated by this scope.
584
+ </summary>
585
+ <value>The file name of the weakly named module generated by this scope.</value>
586
+ </member>
587
+ <member name="P:Castle.DynamicProxy.ModuleScope.WeakNamedModuleDirectory">
588
+ <summary>
589
+ Gets the directory where the weakly named module generated by this scope will be saved, or <see langword="null"/> if the current directory
590
+ is used.
591
+ </summary>
592
+ <value>The directory where the weakly named module generated by this scope will be saved when <see cref="!:SaveAssembly()"/> is called
593
+ (if this scope was created to save modules).</value>
594
+ </member>
595
+ <member name="T:Castle.DynamicProxy.PersistentProxyBuilder">
596
+ <summary>
597
+ ProxyBuilder that persists the generated type.
598
+ </summary>
599
+ <remarks>
600
+ The saved assembly contains just the last generated type.
601
+ </remarks>
602
+ </member>
603
+ <member name="M:Castle.DynamicProxy.PersistentProxyBuilder.#ctor">
604
+ <summary>
605
+ Initializes a new instance of the <see cref="T:Castle.DynamicProxy.PersistentProxyBuilder"/> class.
606
+ </summary>
607
+ </member>
608
+ <member name="M:Castle.DynamicProxy.ProxyGenerationOptions.#ctor(Castle.DynamicProxy.IProxyGenerationHook)">
609
+ <summary>
610
+ Initializes a new instance of the <see cref="T:Castle.DynamicProxy.ProxyGenerationOptions"/> class.
611
+ </summary>
612
+ <param name="hook">The hook.</param>
613
+ </member>
614
+ <member name="M:Castle.DynamicProxy.ProxyGenerationOptions.#ctor">
615
+ <summary>
616
+ Initializes a new instance of the <see cref="T:Castle.DynamicProxy.ProxyGenerationOptions"/> class.
617
+ </summary>
618
+ </member>
619
+ <member name="T:Castle.DynamicProxy.ProxyGenerator">
620
+ <summary>
621
+ Provides proxy objects for classes and interfaces.
622
+ </summary>
623
+ </member>
624
+ <member name="M:Castle.DynamicProxy.ProxyGenerator.#ctor(Castle.DynamicProxy.IProxyBuilder)">
625
+ <summary>
626
+ Initializes a new instance of the <see cref="T:Castle.DynamicProxy.ProxyGenerator"/> class.
627
+ </summary>
628
+ <param name="builder">Proxy types builder.</param>
629
+ </member>
630
+ <member name="M:Castle.DynamicProxy.ProxyGenerator.#ctor">
631
+ <summary>
632
+ Initializes a new instance of the <see cref="T:Castle.DynamicProxy.ProxyGenerator"/> class.
633
+ </summary>
634
+ </member>
635
+ <member name="M:Castle.DynamicProxy.ProxyGenerator.CreateInterfaceProxyWithTarget``1(``0,Castle.Core.Interceptor.IInterceptor[])">
636
+ <summary>
637
+ Creates proxy object intercepting calls to members of interface <typeparamref name="TInterface"/> on <paramref name="target"/> object with given <paramref name="interceptors"/>.
638
+ </summary>
639
+ <typeparam name="TInterface">Type of the interface implemented by <paramref name="target"/> which will be proxied.</typeparam>
640
+ <param name="target">The target object, calls to which will be intercepted.</param>
641
+ <param name="interceptors">The interceptors called during the invocation of proxied methods.</param>
642
+ <returns>Object proxying calls to members of <typeparamref name="TInterface"/> on <paramref name="target"/> object.</returns>
643
+ <exception cref="T:System.ArgumentNullException">Thrown when given <paramref name="target"/> object is a null reference (Nothing in Visual Basic).</exception>
644
+ <exception cref="T:System.ArgumentNullException">Thrown when given <paramref name="interceptors"/> array is a null reference (Nothing in Visual Basic).</exception>
645
+ <exception cref="T:System.ArgumentException">Thrown when given <typeparamref name="TInterface"/>is not an interface type.</exception>
646
+ <exception cref="T:System.MissingMethodException">Thrown when no default constructor exists on actual type of <paramref name="target"/> object.</exception>
647
+ <exception cref="T:System.Reflection.TargetInvocationException">Thrown when default constructor of actual type of <paramref name="target"/> throws an exception.</exception>
648
+ <remarks>
649
+ This method generates new proxy type for each type of <paramref name="target"/>, which affects performance. If you don't want to proxy types differently depending on the type of the target
650
+ use <see cref="M:Castle.DynamicProxy.ProxyGenerator.CreateInterfaceProxyWithTargetInterface``1(``0,Castle.Core.Interceptor.IInterceptor[])"/> method.
651
+ This method uses <see cref="T:Castle.DynamicProxy.IProxyBuilder"/> implementation to generate a proxy type.
652
+ As such caller should expect any type of exception that given <see cref="T:Castle.DynamicProxy.IProxyBuilder"/> implementation may throw.
653
+ </remarks>
654
+ </member>
655
+ <member name="M:Castle.DynamicProxy.ProxyGenerator.CreateInterfaceProxyWithTarget``1(``0,Castle.DynamicProxy.ProxyGenerationOptions,Castle.Core.Interceptor.IInterceptor[])">
656
+ <summary>
657
+ Creates proxy object intercepting calls to members of interface <typeparamref name="TInterface"/> on <paramref name="target"/> object with given <paramref name="interceptors"/>.
658
+ </summary>
659
+ <typeparam name="TInterface">Type of the interface implemented by <paramref name="target"/> which will be proxied.</typeparam>
660
+ <param name="target">The target object, calls to which will be intercepted.</param>
661
+ <param name="options">The proxy generation options used to influence generated proxy type and object.</param>
662
+ <param name="interceptors">The interceptors called during the invocation of proxied methods.</param>
663
+ <returns>
664
+ Object proxying calls to members of <typeparamref name="TInterface"/> on <paramref name="target"/> object.
665
+ </returns>
666
+ <exception cref="T:System.ArgumentNullException">Thrown when given <paramref name="target"/> object is a null reference (Nothing in Visual Basic).</exception>
667
+ <exception cref="T:System.ArgumentNullException">Thrown when given <paramref name="interceptors"/> array is a null reference (Nothing in Visual Basic).</exception>
668
+ <exception cref="T:System.ArgumentException">Thrown when given <typeparamref name="TInterface"/>is not an interface type.</exception>
669
+ <exception cref="T:System.MissingMethodException">Thrown when no default constructor exists on actual type of <paramref name="target"/> object.</exception>
670
+ <exception cref="T:System.Reflection.TargetInvocationException">Thrown when default constructor of actual type of <paramref name="target"/> throws an exception.</exception>
671
+ <remarks>
672
+ This method generates new proxy type for each type of <paramref name="target"/>, which affects performance. If you don't want to proxy types differently depending on the type of the target
673
+ use <see cref="M:Castle.DynamicProxy.ProxyGenerator.CreateInterfaceProxyWithTargetInterface``1(``0,Castle.DynamicProxy.ProxyGenerationOptions,Castle.Core.Interceptor.IInterceptor[])"/> method.
674
+ This method uses <see cref="T:Castle.DynamicProxy.IProxyBuilder"/> implementation to generate a proxy type.
675
+ As such caller should expect any type of exception that given <see cref="T:Castle.DynamicProxy.IProxyBuilder"/> implementation may throw.
676
+ </remarks>
677
+ </member>
678
+ <member name="M:Castle.DynamicProxy.ProxyGenerator.CreateInterfaceProxyWithTarget(System.Type,System.Object,Castle.Core.Interceptor.IInterceptor[])">
679
+ <summary>
680
+ Creates proxy object intercepting calls to members of interface <paramref name="interfaceToProxy"/> on <paramref name="target"/> object with given <paramref name="interceptors"/>.
681
+ </summary>
682
+ <param name="interfaceToProxy">Type of the interface implemented by <paramref name="target"/> which will be proxied.</param>
683
+ <param name="target">The target object, calls to which will be intercepted.</param>
684
+ <param name="interceptors">The interceptors called during the invocation of proxied methods.</param>
685
+ <returns>
686
+ Object proxying calls to members of <paramref name="interfaceToProxy"/> type on <paramref name="target"/> object.
687
+ </returns>
688
+ <exception cref="T:System.ArgumentNullException">Thrown when given <paramref name="interfaceToProxy"/> object is a null reference (Nothing in Visual Basic).</exception>
689
+ <exception cref="T:System.ArgumentNullException">Thrown when given <paramref name="target"/> object is a null reference (Nothing in Visual Basic).</exception>
690
+ <exception cref="T:System.ArgumentNullException">Thrown when given <paramref name="interceptors"/> array is a null reference (Nothing in Visual Basic).</exception>
691
+ <exception cref="T:System.ArgumentException">Thrown when given <paramref name="interfaceToProxy"/> is a generic type definition.</exception>
692
+ <exception cref="T:System.ArgumentException">Thrown when given <paramref name="interfaceToProxy"/> is not an interface type.</exception>
693
+ <exception cref="T:System.ArgumentException">Thrown when given <paramref name="target"/> does not implement <paramref name="interfaceToProxy"/> interface.</exception>
694
+ <exception cref="T:System.MissingMethodException">Thrown when no default constructor exists on actual type of <paramref name="target"/> object.</exception>
695
+ <exception cref="T:System.Reflection.TargetInvocationException">Thrown when default constructor of actual type of <paramref name="target"/> throws an exception.</exception>
696
+ <remarks>
697
+ This method generates new proxy type for each type of <paramref name="target"/>, which affects performance. If you don't want to proxy types differently depending on the type of the target
698
+ use <see cref="M:Castle.DynamicProxy.ProxyGenerator.CreateInterfaceProxyWithTargetInterface(System.Type,System.Object,Castle.Core.Interceptor.IInterceptor[])"/> method.
699
+ This method uses <see cref="T:Castle.DynamicProxy.IProxyBuilder"/> implementation to generate a proxy type.
700
+ As such caller should expect any type of exception that given <see cref="T:Castle.DynamicProxy.IProxyBuilder"/> implementation may throw.
701
+ </remarks>
702
+ </member>
703
+ <member name="M:Castle.DynamicProxy.ProxyGenerator.CreateInterfaceProxyWithTarget(System.Type,System.Object,Castle.DynamicProxy.ProxyGenerationOptions,Castle.Core.Interceptor.IInterceptor[])">
704
+ <summary>
705
+ Creates proxy object intercepting calls to members of interface <paramref name="interfaceToProxy"/> on <paramref name="target"/> object with given <paramref name="interceptors"/>.
706
+ </summary>
707
+ <param name="interfaceToProxy">Type of the interface implemented by <paramref name="target"/> which will be proxied.</param>
708
+ <param name="target">The target object, calls to which will be intercepted.</param>
709
+ <param name="options">The proxy generation options used to influence generated proxy type and object.</param>
710
+ <param name="interceptors">The interceptors called during the invocation of proxied methods.</param>
711
+ <returns>
712
+ Object proxying calls to members of <paramref name="interfaceToProxy"/> type on <paramref name="target"/> object.
713
+ </returns>
714
+ <exception cref="T:System.ArgumentNullException">Thrown when given <paramref name="interfaceToProxy"/> object is a null reference (Nothing in Visual Basic).</exception>
715
+ <exception cref="T:System.ArgumentNullException">Thrown when given <paramref name="target"/> object is a null reference (Nothing in Visual Basic).</exception>
716
+ <exception cref="T:System.ArgumentNullException">Thrown when given <paramref name="interceptors"/> array is a null reference (Nothing in Visual Basic).</exception>
717
+ <exception cref="T:System.ArgumentException">Thrown when given <paramref name="interfaceToProxy"/> is a generic type definition.</exception>
718
+ <exception cref="T:System.ArgumentException">Thrown when given <paramref name="interfaceToProxy"/> is not an interface type.</exception>
719
+ <exception cref="T:System.ArgumentException">Thrown when given <paramref name="target"/> does not implement <paramref name="interfaceToProxy"/> interface.</exception>
720
+ <exception cref="T:System.MissingMethodException">Thrown when no default constructor exists on actual type of <paramref name="target"/> object.</exception>
721
+ <exception cref="T:System.Reflection.TargetInvocationException">Thrown when default constructor of actual type of <paramref name="target"/> throws an exception.</exception>
722
+ <remarks>
723
+ This method generates new proxy type for each type of <paramref name="target"/>, which affects performance. If you don't want to proxy types differently depending on the type of the target
724
+ use <see cref="M:Castle.DynamicProxy.ProxyGenerator.CreateInterfaceProxyWithTargetInterface(System.Type,System.Object,Castle.DynamicProxy.ProxyGenerationOptions,Castle.Core.Interceptor.IInterceptor[])"/> method.
725
+ This method uses <see cref="T:Castle.DynamicProxy.IProxyBuilder"/> implementation to generate a proxy type.
726
+ As such caller should expect any type of exception that given <see cref="T:Castle.DynamicProxy.IProxyBuilder"/> implementation may throw.
727
+ </remarks>
728
+ </member>
729
+ <member name="M:Castle.DynamicProxy.ProxyGenerator.CreateInterfaceProxyWithTarget(System.Type,System.Type[],System.Object,Castle.Core.Interceptor.IInterceptor[])">
730
+ <summary>
731
+ Creates proxy object intercepting calls to members of interface <paramref name="interfaceToProxy"/> on <paramref name="target"/> object with given <paramref name="interceptors"/>.
732
+ </summary>
733
+ <param name="interfaceToProxy">Type of the interface implemented by <paramref name="target"/> which will be proxied.</param>
734
+ <param name="target">The target object, calls to which will be intercepted.</param>
735
+ <param name="additionalInterfacesToProxy">Additional interface types. Calls to their members will be proxied as well.</param>
736
+ <param name="interceptors">The interceptors called during the invocation of proxied methods.</param>
737
+ <returns>
738
+ Object proxying calls to members of <paramref name="interfaceToProxy"/> and <paramref name="additionalInterfacesToProxy"/> types on <paramref name="target"/> object.
739
+ </returns>
740
+ <exception cref="T:System.ArgumentNullException">Thrown when given <paramref name="interfaceToProxy"/> object is a null reference (Nothing in Visual Basic).</exception>
741
+ <exception cref="T:System.ArgumentNullException">Thrown when given <paramref name="target"/> object is a null reference (Nothing in Visual Basic).</exception>
742
+ <exception cref="T:System.ArgumentNullException">Thrown when given <paramref name="interceptors"/> array is a null reference (Nothing in Visual Basic).</exception>
743
+ <exception cref="T:System.ArgumentException">Thrown when given <paramref name="interfaceToProxy"/> or any of <paramref name="additionalInterfacesToProxy"/> is a generic type definition.</exception>
744
+ <exception cref="T:System.ArgumentException">Thrown when given <paramref name="interfaceToProxy"/> is not an interface type.</exception>
745
+ <exception cref="T:System.ArgumentException">Thrown when given <paramref name="target"/> does not implement <paramref name="interfaceToProxy"/> interface.</exception>
746
+ <exception cref="T:System.MissingMethodException">Thrown when no default constructor exists on actual type of <paramref name="target"/> object.</exception>
747
+ <exception cref="T:System.Reflection.TargetInvocationException">Thrown when default constructor of actual type of <paramref name="target"/> throws an exception.</exception>
748
+ <remarks>
749
+ This method generates new proxy type for each type of <paramref name="target"/>, which affects performance. If you don't want to proxy types differently depending on the type of the target
750
+ use <see cref="M:Castle.DynamicProxy.ProxyGenerator.CreateInterfaceProxyWithTargetInterface(System.Type,System.Type[],System.Object,Castle.Core.Interceptor.IInterceptor[])"/> method.
751
+ This method uses <see cref="T:Castle.DynamicProxy.IProxyBuilder"/> implementation to generate a proxy type.
752
+ As such caller should expect any type of exception that given <see cref="T:Castle.DynamicProxy.IProxyBuilder"/> implementation may throw.
753
+ </remarks>
754
+ </member>
755
+ <member name="M:Castle.DynamicProxy.ProxyGenerator.CreateInterfaceProxyWithTarget(System.Type,System.Type[],System.Object,Castle.DynamicProxy.ProxyGenerationOptions,Castle.Core.Interceptor.IInterceptor[])">
756
+ <summary>
757
+ Creates proxy object intercepting calls to members of interface <paramref name="interfaceToProxy"/> on <paramref name="target"/> object with given <paramref name="interceptors"/>.
758
+ </summary>
759
+ <param name="interfaceToProxy">Type of the interface implemented by <paramref name="target"/> which will be proxied.</param>
760
+ <param name="target">The target object, calls to which will be intercepted.</param>
761
+ <param name="options">The proxy generation options used to influence generated proxy type and object.</param>
762
+ <param name="additionalInterfacesToProxy">Additional interface types. Calls to their members will be proxied as well.</param>
763
+ <param name="interceptors">The interceptors called during the invocation of proxied methods.</param>
764
+ <returns>
765
+ Object proxying calls to members of <paramref name="interfaceToProxy"/> and <paramref name="additionalInterfacesToProxy"/> types on <paramref name="target"/> object.
766
+ </returns>
767
+ <exception cref="T:System.ArgumentNullException">Thrown when given <paramref name="interfaceToProxy"/> object is a null reference (Nothing in Visual Basic).</exception>
768
+ <exception cref="T:System.ArgumentNullException">Thrown when given <paramref name="target"/> object is a null reference (Nothing in Visual Basic).</exception>
769
+ <exception cref="T:System.ArgumentNullException">Thrown when given <paramref name="interceptors"/> array is a null reference (Nothing in Visual Basic).</exception>
770
+ <exception cref="T:System.ArgumentException">Thrown when given <paramref name="interfaceToProxy"/> or any of <paramref name="additionalInterfacesToProxy"/> is a generic type definition.</exception>
771
+ <exception cref="T:System.ArgumentException">Thrown when given <paramref name="interfaceToProxy"/> is not an interface type.</exception>
772
+ <exception cref="T:System.ArgumentException">Thrown when given <paramref name="target"/> does not implement <paramref name="interfaceToProxy"/> interface.</exception>
773
+ <exception cref="T:System.MissingMethodException">Thrown when no default constructor exists on actual type of <paramref name="target"/> object.</exception>
774
+ <exception cref="T:System.Reflection.TargetInvocationException">Thrown when default constructor of actual type of <paramref name="target"/> throws an exception.</exception>
775
+ <remarks>
776
+ This method generates new proxy type for each type of <paramref name="target"/>, which affects performance. If you don't want to proxy types differently depending on the type of the target
777
+ use <see cref="M:Castle.DynamicProxy.ProxyGenerator.CreateInterfaceProxyWithTargetInterface(System.Type,System.Type[],System.Object,Castle.DynamicProxy.ProxyGenerationOptions,Castle.Core.Interceptor.IInterceptor[])"/> method.
778
+ This method uses <see cref="T:Castle.DynamicProxy.IProxyBuilder"/> implementation to generate a proxy type.
779
+ As such caller should expect any type of exception that given <see cref="T:Castle.DynamicProxy.IProxyBuilder"/> implementation may throw.
780
+ </remarks>
781
+ </member>
782
+ <member name="M:Castle.DynamicProxy.ProxyGenerator.CreateInterfaceProxyWithTargetInterface(System.Type,System.Object,Castle.Core.Interceptor.IInterceptor[])">
783
+ <summary>
784
+ Creates proxy object intercepting calls to members of interface <paramref name="interfaceToProxy"/> on <paramref name="target"/> object with given <paramref name="interceptors"/>.
785
+ Interceptors can use <see cref="T:Castle.Core.Interceptor.IChangeProxyTarget"/> interface to provide other target for method invocation than default <paramref name="target"/>.
786
+ </summary>
787
+ <param name="interfaceToProxy">Type of the interface implemented by <paramref name="target"/> which will be proxied.</param>
788
+ <param name="target">The target object, calls to which will be intercepted.</param>
789
+ <param name="interceptors">The interceptors called during the invocation of proxied methods.</param>
790
+ <returns>
791
+ Object proxying calls to members of <paramref name="interfaceToProxy"/> type on <paramref name="target"/> object or alternative implementation swapped at runtime by an interceptor.
792
+ </returns>
793
+ <exception cref="T:System.ArgumentNullException">Thrown when given <paramref name="interfaceToProxy"/> object is a null reference (Nothing in Visual Basic).</exception>
794
+ <exception cref="T:System.ArgumentNullException">Thrown when given <paramref name="target"/> object is a null reference (Nothing in Visual Basic).</exception>
795
+ <exception cref="T:System.ArgumentNullException">Thrown when given <paramref name="interceptors"/> array is a null reference (Nothing in Visual Basic).</exception>
796
+ <exception cref="T:System.ArgumentException">Thrown when given <paramref name="interfaceToProxy"/> is a generic type definition.</exception>
797
+ <exception cref="T:System.ArgumentException">Thrown when given <paramref name="interfaceToProxy"/> is not an interface type.</exception>
798
+ <exception cref="T:System.ArgumentException">Thrown when given <paramref name="target"/> does not implement <paramref name="interfaceToProxy"/> interface.</exception>
799
+ <exception cref="T:System.MissingMethodException">Thrown when no default constructor exists on actual type of <paramref name="target"/> object.</exception>
800
+ <exception cref="T:System.Reflection.TargetInvocationException">Thrown when default constructor of actual type of <paramref name="target"/> throws an exception.</exception>
801
+ <remarks>
802
+ This method uses <see cref="T:Castle.DynamicProxy.IProxyBuilder"/> implementation to generate a proxy type.
803
+ As such caller should expect any type of exception that given <see cref="T:Castle.DynamicProxy.IProxyBuilder"/> implementation may throw.
804
+ </remarks>
805
+ </member>
806
+ <member name="M:Castle.DynamicProxy.ProxyGenerator.CreateInterfaceProxyWithTargetInterface``1(``0,Castle.Core.Interceptor.IInterceptor[])">
807
+ <summary>
808
+ Creates proxy object intercepting calls to members of interface <typeparamref name="TInterface"/> on <paramref name="target"/> object with given <paramref name="interceptors"/>.
809
+ Interceptors can use <see cref="T:Castle.Core.Interceptor.IChangeProxyTarget"/> interface to provide other target for method invocation than default <paramref name="target"/>.
810
+ </summary>
811
+ <typeparam name="TInterface">Type of the interface implemented by <paramref name="target"/> which will be proxied.</typeparam>
812
+ <param name="target">The target object, calls to which will be intercepted.</param>
813
+ <param name="interceptors">The interceptors called during the invocation of proxied methods.</param>
814
+ <returns>
815
+ Object proxying calls to members of <typeparamref name="TInterface"/> type on <paramref name="target"/> object or alternative implementation swapped at runtime by an interceptor.
816
+ </returns>
817
+ <exception cref="T:System.ArgumentNullException">Thrown when given <paramref name="target"/> object is a null reference (Nothing in Visual Basic).</exception>
818
+ <exception cref="T:System.ArgumentNullException">Thrown when given <paramref name="interceptors"/> array is a null reference (Nothing in Visual Basic).</exception>
819
+ <exception cref="T:System.ArgumentException">Thrown when given <typeparamref name="TInterface"/> is not an interface type.</exception>
820
+ <exception cref="T:System.MissingMethodException">Thrown when no default constructor exists on actual type of <paramref name="target"/> object.</exception>
821
+ <exception cref="T:System.Reflection.TargetInvocationException">Thrown when default constructor of actual type of <paramref name="target"/> throws an exception.</exception>
822
+ <remarks>
823
+ This method uses <see cref="T:Castle.DynamicProxy.IProxyBuilder"/> implementation to generate a proxy type.
824
+ As such caller should expect any type of exception that given <see cref="T:Castle.DynamicProxy.IProxyBuilder"/> implementation may throw.
825
+ </remarks>
826
+ </member>
827
+ <member name="M:Castle.DynamicProxy.ProxyGenerator.CreateInterfaceProxyWithTargetInterface``1(``0,Castle.DynamicProxy.ProxyGenerationOptions,Castle.Core.Interceptor.IInterceptor[])">
828
+ <summary>
829
+ Creates proxy object intercepting calls to members of interface <typeparamref name="TInterface"/> on <paramref name="target"/> object with given <paramref name="interceptors"/>.
830
+ Interceptors can use <see cref="T:Castle.Core.Interceptor.IChangeProxyTarget"/> interface to provide other target for method invocation than default <paramref name="target"/>.
831
+ </summary>
832
+ <typeparam name="TInterface">Type of the interface implemented by <paramref name="target"/> which will be proxied.</typeparam>
833
+ <param name="target">The target object, calls to which will be intercepted.</param>
834
+ <param name="options">The proxy generation options used to influence generated proxy type and object.</param>
835
+ <param name="interceptors">The interceptors called during the invocation of proxied methods.</param>
836
+ <returns>
837
+ Object proxying calls to members of <typeparamref name="TInterface"/> type on <paramref name="target"/> object or alternative implementation swapped at runtime by an interceptor.
838
+ </returns>
839
+ <exception cref="T:System.ArgumentNullException">Thrown when given <paramref name="target"/> object is a null reference (Nothing in Visual Basic).</exception>
840
+ <exception cref="T:System.ArgumentNullException">Thrown when given <paramref name="interceptors"/> array is a null reference (Nothing in Visual Basic).</exception>
841
+ <exception cref="T:System.ArgumentException">Thrown when given <typeparamref name="TInterface"/> is not an interface type.</exception>
842
+ <exception cref="T:System.MissingMethodException">Thrown when no default constructor exists on actual type of <paramref name="target"/> object.</exception>
843
+ <exception cref="T:System.Reflection.TargetInvocationException">Thrown when default constructor of actual type of <paramref name="target"/> throws an exception.</exception>
844
+ <remarks>
845
+ This method uses <see cref="T:Castle.DynamicProxy.IProxyBuilder"/> implementation to generate a proxy type.
846
+ As such caller should expect any type of exception that given <see cref="T:Castle.DynamicProxy.IProxyBuilder"/> implementation may throw.
847
+ </remarks>
848
+ </member>
849
+ <member name="M:Castle.DynamicProxy.ProxyGenerator.CreateInterfaceProxyWithTargetInterface(System.Type,System.Type[],System.Object,Castle.Core.Interceptor.IInterceptor[])">
850
+ <summary>
851
+ Creates proxy object intercepting calls to members of interface <paramref name="interfaceToProxy"/> on <paramref name="target"/> object with given <paramref name="interceptors"/>.
852
+ Interceptors can use <see cref="T:Castle.Core.Interceptor.IChangeProxyTarget"/> interface to provide other target for method invocation than default <paramref name="target"/>.
853
+ </summary>
854
+ <param name="interfaceToProxy">Type of the interface implemented by <paramref name="target"/> which will be proxied.</param>
855
+ <param name="target">The target object, calls to which will be intercepted.</param>
856
+ <param name="additionalInterfacesToProxy">Additional interface types. Calls to their members will be proxied as well.</param>
857
+ <param name="interceptors">The interceptors called during the invocation of proxied methods.</param>
858
+ <returns>
859
+ Object proxying calls to members of <paramref name="interfaceToProxy"/> and <paramref name="additionalInterfacesToProxy"/> types on <paramref name="target"/> object or alternative implementation swapped at runtime by an interceptor.
860
+ </returns>
861
+ <exception cref="T:System.ArgumentNullException">Thrown when given <paramref name="interfaceToProxy"/> object is a null reference (Nothing in Visual Basic).</exception>
862
+ <exception cref="T:System.ArgumentNullException">Thrown when given <paramref name="target"/> object is a null reference (Nothing in Visual Basic).</exception>
863
+ <exception cref="T:System.ArgumentNullException">Thrown when given <paramref name="interceptors"/> array is a null reference (Nothing in Visual Basic).</exception>
864
+ <exception cref="T:System.ArgumentException">Thrown when given <paramref name="interfaceToProxy"/> or any of <paramref name="additionalInterfacesToProxy"/> is a generic type definition.</exception>
865
+ <exception cref="T:System.ArgumentException">Thrown when given <paramref name="interfaceToProxy"/> is not an interface type.</exception>
866
+ <exception cref="T:System.ArgumentException">Thrown when given <paramref name="target"/> does not implement <paramref name="interfaceToProxy"/> interface.</exception>
867
+ <exception cref="T:System.MissingMethodException">Thrown when no default constructor exists on actual type of <paramref name="target"/> object.</exception>
868
+ <exception cref="T:System.Reflection.TargetInvocationException">Thrown when default constructor of actual type of <paramref name="target"/> throws an exception.</exception>
869
+ <remarks>
870
+ This method uses <see cref="T:Castle.DynamicProxy.IProxyBuilder"/> implementation to generate a proxy type.
871
+ As such caller should expect any type of exception that given <see cref="T:Castle.DynamicProxy.IProxyBuilder"/> implementation may throw.
872
+ </remarks>
873
+ </member>
874
+ <member name="M:Castle.DynamicProxy.ProxyGenerator.CreateInterfaceProxyWithTargetInterface(System.Type,System.Object,Castle.DynamicProxy.ProxyGenerationOptions,Castle.Core.Interceptor.IInterceptor[])">
875
+ <summary>
876
+ Creates proxy object intercepting calls to members of interface <paramref name="interfaceToProxy"/> on <paramref name="target"/> object with given <paramref name="interceptors"/>.
877
+ Interceptors can use <see cref="T:Castle.Core.Interceptor.IChangeProxyTarget"/> interface to provide other target for method invocation than default <paramref name="target"/>.
878
+ </summary>
879
+ <param name="interfaceToProxy">Type of the interface implemented by <paramref name="target"/> which will be proxied.</param>
880
+ <param name="target">The target object, calls to which will be intercepted.</param>
881
+ <param name="options">The proxy generation options used to influence generated proxy type and object.</param>
882
+ <param name="interceptors">The interceptors called during the invocation of proxied methods.</param>
883
+ <returns>
884
+ Object proxying calls to members of <paramref name="interfaceToProxy"/> type on <paramref name="target"/> object or alternative implementation swapped at runtime by an interceptor.
885
+ </returns>
886
+ <exception cref="T:System.ArgumentNullException">Thrown when given <paramref name="interfaceToProxy"/> object is a null reference (Nothing in Visual Basic).</exception>
887
+ <exception cref="T:System.ArgumentNullException">Thrown when given <paramref name="target"/> object is a null reference (Nothing in Visual Basic).</exception>
888
+ <exception cref="T:System.ArgumentNullException">Thrown when given <paramref name="interceptors"/> array is a null reference (Nothing in Visual Basic).</exception>
889
+ <exception cref="T:System.ArgumentException">Thrown when given <paramref name="interfaceToProxy"/> is a generic type definition.</exception>
890
+ <exception cref="T:System.ArgumentException">Thrown when given <paramref name="interfaceToProxy"/> is not an interface type.</exception>
891
+ <exception cref="T:System.ArgumentException">Thrown when given <paramref name="target"/> does not implement <paramref name="interfaceToProxy"/> interface.</exception>
892
+ <exception cref="T:System.MissingMethodException">Thrown when no default constructor exists on actual type of <paramref name="target"/> object.</exception>
893
+ <exception cref="T:System.Reflection.TargetInvocationException">Thrown when default constructor of actual type of <paramref name="target"/> throws an exception.</exception>
894
+ <remarks>
895
+ This method uses <see cref="T:Castle.DynamicProxy.IProxyBuilder"/> implementation to generate a proxy type.
896
+ As such caller should expect any type of exception that given <see cref="T:Castle.DynamicProxy.IProxyBuilder"/> implementation may throw.
897
+ </remarks>
898
+ </member>
899
+ <member name="M:Castle.DynamicProxy.ProxyGenerator.CreateInterfaceProxyWithTargetInterface(System.Type,System.Type[],System.Object,Castle.DynamicProxy.ProxyGenerationOptions,Castle.Core.Interceptor.IInterceptor[])">
900
+ <summary>
901
+ Creates proxy object intercepting calls to members of interface <paramref name="interfaceToProxy"/> on <paramref name="target"/> object with given <paramref name="interceptors"/>.
902
+ Interceptors can use <see cref="T:Castle.Core.Interceptor.IChangeProxyTarget"/> interface to provide other target for method invocation than default <paramref name="target"/>.
903
+ </summary>
904
+ <param name="interfaceToProxy">Type of the interface implemented by <paramref name="target"/> which will be proxied.</param>
905
+ <param name="target">The target object, calls to which will be intercepted.</param>
906
+ <param name="options">The proxy generation options used to influence generated proxy type and object.</param>
907
+ <param name="additionalInterfacesToProxy">Additional interface types. Calls to their members will be proxied as well.</param>
908
+ <param name="interceptors">The interceptors called during the invocation of proxied methods.</param>
909
+ <returns>
910
+ Object proxying calls to members of <paramref name="interfaceToProxy"/> and <paramref name="additionalInterfacesToProxy"/> types on <paramref name="target"/> object or alternative implementation swapped at runtime by an interceptor.
911
+ </returns>
912
+ <exception cref="T:System.ArgumentNullException">Thrown when given <paramref name="interfaceToProxy"/> object is a null reference (Nothing in Visual Basic).</exception>
913
+ <exception cref="T:System.ArgumentNullException">Thrown when given <paramref name="target"/> object is a null reference (Nothing in Visual Basic).</exception>
914
+ <exception cref="T:System.ArgumentNullException">Thrown when given <paramref name="interceptors"/> array is a null reference (Nothing in Visual Basic).</exception>
915
+ <exception cref="T:System.ArgumentException">Thrown when given <paramref name="interfaceToProxy"/> or any of <paramref name="additionalInterfacesToProxy"/> is a generic type definition.</exception>
916
+ <exception cref="T:System.ArgumentException">Thrown when given <paramref name="interfaceToProxy"/> is not an interface type.</exception>
917
+ <exception cref="T:System.ArgumentException">Thrown when given <paramref name="target"/> does not implement <paramref name="interfaceToProxy"/> interface.</exception>
918
+ <exception cref="T:System.MissingMethodException">Thrown when no default constructor exists on actual type of <paramref name="target"/> object.</exception>
919
+ <exception cref="T:System.Reflection.TargetInvocationException">Thrown when default constructor of actual type of <paramref name="target"/> throws an exception.</exception>
920
+ <remarks>
921
+ This method uses <see cref="T:Castle.DynamicProxy.IProxyBuilder"/> implementation to generate a proxy type.
922
+ As such caller should expect any type of exception that given <see cref="T:Castle.DynamicProxy.IProxyBuilder"/> implementation may throw.
923
+ </remarks>
924
+ </member>
925
+ <member name="M:Castle.DynamicProxy.ProxyGenerator.CreateInterfaceProxyWithoutTarget``1(Castle.Core.Interceptor.IInterceptor)">
926
+ <summary>
927
+ Creates proxy object intercepting calls to members of interface <typeparamref name="TInterface"/> on target object generated at runtime with given <paramref name="interceptor"/>.
928
+ </summary>
929
+ <typeparam name="TInterface">Type of the interface which will be proxied.</typeparam>
930
+ <param name="interceptor">The interceptors called during the invocation of proxied methods.</param>
931
+ <returns>
932
+ Object proxying calls to members of <typeparamref name="TInterface"/> types on generated target object.
933
+ </returns>
934
+ <exception cref="T:System.ArgumentNullException">Thrown when given <paramref name="interceptor"/> array is a null reference (Nothing in Visual Basic).</exception>
935
+ <exception cref="T:System.ArgumentException">Thrown when given <typeparamref name="TInterface"/> is not an interface type.</exception>
936
+ <remarks>
937
+ Since this method uses an empty-shell implementation of interfaces to proxy generated at runtime, the actual implementation of proxied methods must be provided by given <see cref="T:Castle.Core.Interceptor.IInterceptor"/> implementations.
938
+ They are responsible for setting return value (and out parameters) on proxied methods. It is also illegal for an interceptor to call <see cref="M:Castle.Core.Interceptor.IInvocation.Proceed"/>, since there's no actual implementation to proceed with.
939
+ As a result of that also at least one <see cref="T:Castle.Core.Interceptor.IInterceptor"/> implementation must be provided.
940
+ This method uses <see cref="T:Castle.DynamicProxy.IProxyBuilder"/> implementation to generate a proxy type.
941
+ As such caller should expect any type of exception that given <see cref="T:Castle.DynamicProxy.IProxyBuilder"/> implementation may throw.
942
+ </remarks>
943
+ </member>
944
+ <member name="M:Castle.DynamicProxy.ProxyGenerator.CreateInterfaceProxyWithoutTarget``1(Castle.Core.Interceptor.IInterceptor[])">
945
+ <summary>
946
+ Creates proxy object intercepting calls to members of interface <typeparamref name="TInterface"/> on target object generated at runtime with given <paramref name="interceptors"/>.
947
+ </summary>
948
+ <typeparam name="TInterface">Type of the interface which will be proxied.</typeparam>
949
+ <param name="interceptors">The interceptors called during the invocation of proxied methods.</param>
950
+ <returns>
951
+ Object proxying calls to members of <typeparamref name="TInterface"/> types on generated target object.
952
+ </returns>
953
+ <exception cref="T:System.ArgumentNullException">Thrown when given <paramref name="interceptors"/> array is a null reference (Nothing in Visual Basic).</exception>
954
+ <exception cref="T:System.ArgumentException">Thrown when given <typeparamref name="TInterface"/> is not an interface type.</exception>
955
+ <remarks>
956
+ Since this method uses an empty-shell implementation of interfaces to proxy generated at runtime, the actual implementation of proxied methods must be provided by given <see cref="T:Castle.Core.Interceptor.IInterceptor"/> implementations.
957
+ They are responsible for setting return value (and out parameters) on proxied methods. It is also illegal for an interceptor to call <see cref="M:Castle.Core.Interceptor.IInvocation.Proceed"/>, since there's no actual implementation to proceed with.
958
+ As a result of that also at least one <see cref="T:Castle.Core.Interceptor.IInterceptor"/> implementation must be provided.
959
+ This method uses <see cref="T:Castle.DynamicProxy.IProxyBuilder"/> implementation to generate a proxy type.
960
+ As such caller should expect any type of exception that given <see cref="T:Castle.DynamicProxy.IProxyBuilder"/> implementation may throw.
961
+ </remarks>
962
+ </member>
963
+ <member name="M:Castle.DynamicProxy.ProxyGenerator.CreateInterfaceProxyWithoutTarget``1(Castle.DynamicProxy.ProxyGenerationOptions,Castle.Core.Interceptor.IInterceptor[])">
964
+ <summary>
965
+ Creates proxy object intercepting calls to members of interface <typeparamref name="TInterface"/> on target object generated at runtime with given <paramref name="interceptors"/>.
966
+ </summary>
967
+ <typeparam name="TInterface">Type of the interface which will be proxied.</typeparam>
968
+ <param name="options">The proxy generation options used to influence generated proxy type and object.</param>
969
+ <param name="interceptors">The interceptors called during the invocation of proxied methods.</param>
970
+ <returns>
971
+ Object proxying calls to members of <typeparamref name="TInterface"/> types on generated target object.
972
+ </returns>
973
+ <exception cref="T:System.ArgumentNullException">Thrown when given <paramref name="interceptors"/> array is a null reference (Nothing in Visual Basic).</exception>
974
+ <exception cref="T:System.ArgumentException">Thrown when given <typeparamref name="TInterface"/> is not an interface type.</exception>
975
+ <remarks>
976
+ Since this method uses an empty-shell implementation of interfaces to proxy generated at runtime, the actual implementation of proxied methods must be provided by given <see cref="T:Castle.Core.Interceptor.IInterceptor"/> implementations.
977
+ They are responsible for setting return value (and out parameters) on proxied methods. It is also illegal for an interceptor to call <see cref="M:Castle.Core.Interceptor.IInvocation.Proceed"/>, since there's no actual implementation to proceed with.
978
+ As a result of that also at least one <see cref="T:Castle.Core.Interceptor.IInterceptor"/> implementation must be provided.
979
+ This method uses <see cref="T:Castle.DynamicProxy.IProxyBuilder"/> implementation to generate a proxy type.
980
+ As such caller should expect any type of exception that given <see cref="T:Castle.DynamicProxy.IProxyBuilder"/> implementation may throw.
981
+ </remarks>
982
+ </member>
983
+ <member name="M:Castle.DynamicProxy.ProxyGenerator.CreateInterfaceProxyWithoutTarget(System.Type,Castle.Core.Interceptor.IInterceptor)">
984
+ <summary>
985
+ Creates proxy object intercepting calls to members of interface <paramref name="interfaceToProxy"/> on target object generated at runtime with given <paramref name="interceptor"/>.
986
+ </summary>
987
+ <param name="interfaceToProxy">Type of the interface which will be proxied.</param>
988
+ <param name="interceptor">The interceptors called during the invocation of proxied methods.</param>
989
+ <returns>
990
+ Object proxying calls to members of <paramref name="interfaceToProxy"/> type on generated target object.
991
+ </returns>
992
+ <exception cref="T:System.ArgumentNullException">Thrown when given <paramref name="interfaceToProxy"/> object is a null reference (Nothing in Visual Basic).</exception>
993
+ <exception cref="T:System.ArgumentNullException">Thrown when given <paramref name="interceptor"/> array is a null reference (Nothing in Visual Basic).</exception>
994
+ <exception cref="T:System.ArgumentException">Thrown when given <paramref name="interfaceToProxy"/> is a generic type definition.</exception>
995
+ <exception cref="T:System.ArgumentException">Thrown when given <paramref name="interfaceToProxy"/> is not an interface type.</exception>
996
+ <remarks>
997
+ Since this method uses an empty-shell implementation of interfaces to proxy generated at runtime, the actual implementation of proxied methods must be provided by given <see cref="T:Castle.Core.Interceptor.IInterceptor"/> implementations.
998
+ They are responsible for setting return value (and out parameters) on proxied methods. It is also illegal for an interceptor to call <see cref="M:Castle.Core.Interceptor.IInvocation.Proceed"/>, since there's no actual implementation to proceed with.
999
+ This method uses <see cref="T:Castle.DynamicProxy.IProxyBuilder"/> implementation to generate a proxy type.
1000
+ As such caller should expect any type of exception that given <see cref="T:Castle.DynamicProxy.IProxyBuilder"/> implementation may throw.
1001
+ </remarks>
1002
+ </member>
1003
+ <member name="M:Castle.DynamicProxy.ProxyGenerator.CreateInterfaceProxyWithoutTarget(System.Type,Castle.Core.Interceptor.IInterceptor[])">
1004
+ <summary>
1005
+ Creates proxy object intercepting calls to members of interface <paramref name="interfaceToProxy"/> on target object generated at runtime with given <paramref name="interceptors"/>.
1006
+ </summary>
1007
+ <param name="interfaceToProxy">Type of the interface which will be proxied.</param>
1008
+ <param name="interceptors">The interceptors called during the invocation of proxied methods.</param>
1009
+ <returns>
1010
+ Object proxying calls to members of <paramref name="interfaceToProxy"/> type on generated target object.
1011
+ </returns>
1012
+ <exception cref="T:System.ArgumentNullException">Thrown when given <paramref name="interfaceToProxy"/> object is a null reference (Nothing in Visual Basic).</exception>
1013
+ <exception cref="T:System.ArgumentNullException">Thrown when given <paramref name="interceptors"/> array is a null reference (Nothing in Visual Basic).</exception>
1014
+ <exception cref="T:System.ArgumentException">Thrown when given <paramref name="interfaceToProxy"/> is a generic type definition.</exception>
1015
+ <exception cref="T:System.ArgumentException">Thrown when given <paramref name="interfaceToProxy"/> is not an interface type.</exception>
1016
+ <remarks>
1017
+ Since this method uses an empty-shell implementation of interfaces to proxy generated at runtime, the actual implementation of proxied methods must be provided by given <see cref="T:Castle.Core.Interceptor.IInterceptor"/> implementations.
1018
+ They are responsible for setting return value (and out parameters) on proxied methods. It is also illegal for an interceptor to call <see cref="M:Castle.Core.Interceptor.IInvocation.Proceed"/>, since there's no actual implementation to proceed with.
1019
+ This method uses <see cref="T:Castle.DynamicProxy.IProxyBuilder"/> implementation to generate a proxy type.
1020
+ As such caller should expect any type of exception that given <see cref="T:Castle.DynamicProxy.IProxyBuilder"/> implementation may throw.
1021
+ </remarks>
1022
+ </member>
1023
+ <member name="M:Castle.DynamicProxy.ProxyGenerator.CreateInterfaceProxyWithoutTarget(System.Type,System.Type[],Castle.Core.Interceptor.IInterceptor[])">
1024
+ <summary>
1025
+ Creates proxy object intercepting calls to members of interface <paramref name="interfaceToProxy"/> on target object generated at runtime with given <paramref name="interceptors"/>.
1026
+ </summary>
1027
+ <param name="interfaceToProxy">Type of the interface which will be proxied.</param>
1028
+ <param name="additionalInterfacesToProxy">Additional interface types. Calls to their members will be proxied as well.</param>
1029
+ <param name="interceptors">The interceptors called during the invocation of proxied methods.</param>
1030
+ <returns>
1031
+ Object proxying calls to members of <paramref name="interfaceToProxy"/> and <paramref name="additionalInterfacesToProxy"/> types on generated target object.
1032
+ </returns>
1033
+ <exception cref="T:System.ArgumentNullException">Thrown when given <paramref name="interfaceToProxy"/> object is a null reference (Nothing in Visual Basic).</exception>
1034
+ <exception cref="T:System.ArgumentNullException">Thrown when given <paramref name="interceptors"/> array is a null reference (Nothing in Visual Basic).</exception>
1035
+ <exception cref="T:System.ArgumentException">Thrown when given <paramref name="interfaceToProxy"/> or any of <paramref name="additionalInterfacesToProxy"/> is a generic type definition.</exception>
1036
+ <exception cref="T:System.ArgumentException">Thrown when given <paramref name="interfaceToProxy"/> is not an interface type.</exception>
1037
+ <remarks>
1038
+ Since this method uses an empty-shell implementation of interfaces to proxy generated at runtime, the actual implementation of proxied methods must be provided by given <see cref="T:Castle.Core.Interceptor.IInterceptor"/> implementations.
1039
+ They are responsible for setting return value (and out parameters) on proxied methods. It is also illegal for an interceptor to call <see cref="M:Castle.Core.Interceptor.IInvocation.Proceed"/>, since there's no actual implementation to proceed with.
1040
+ This method uses <see cref="T:Castle.DynamicProxy.IProxyBuilder"/> implementation to generate a proxy type.
1041
+ As such caller should expect any type of exception that given <see cref="T:Castle.DynamicProxy.IProxyBuilder"/> implementation may throw.
1042
+ </remarks>
1043
+ </member>
1044
+ <member name="M:Castle.DynamicProxy.ProxyGenerator.CreateInterfaceProxyWithoutTarget(System.Type,Castle.DynamicProxy.ProxyGenerationOptions,Castle.Core.Interceptor.IInterceptor[])">
1045
+ <summary>
1046
+ Creates proxy object intercepting calls to members of interface <paramref name="interfaceToProxy"/> on target object generated at runtime with given <paramref name="interceptors"/>.
1047
+ </summary>
1048
+ <param name="interfaceToProxy">Type of the interface which will be proxied.</param>
1049
+ <param name="options">The proxy generation options used to influence generated proxy type and object.</param>
1050
+ <param name="interceptors">The interceptors called during the invocation of proxied methods.</param>
1051
+ <returns>
1052
+ Object proxying calls to members of <paramref name="interfaceToProxy"/> on generated target object.
1053
+ </returns>
1054
+ <exception cref="T:System.ArgumentNullException">Thrown when given <paramref name="interfaceToProxy"/> object is a null reference (Nothing in Visual Basic).</exception>
1055
+ <exception cref="T:System.ArgumentNullException">Thrown when given <paramref name="interceptors"/> array is a null reference (Nothing in Visual Basic).</exception>
1056
+ <exception cref="T:System.ArgumentException">Thrown when given <paramref name="interfaceToProxy"/> is a generic type definition.</exception>
1057
+ <exception cref="T:System.ArgumentException">Thrown when given <paramref name="interfaceToProxy"/> is not an interface type.</exception>
1058
+ <remarks>
1059
+ They are responsible for setting return value (and out parameters) on proxied methods. It is also illegal for an interceptor to call <see cref="M:Castle.Core.Interceptor.IInvocation.Proceed"/>, since there's no actual implementation to proceed with.
1060
+ This method uses <see cref="T:Castle.DynamicProxy.IProxyBuilder"/> implementation to generate a proxy type.
1061
+ As such caller should expect any type of exception that given <see cref="T:Castle.DynamicProxy.IProxyBuilder"/> implementation may throw.
1062
+ </remarks>
1063
+ </member>
1064
+ <member name="M:Castle.DynamicProxy.ProxyGenerator.CreateInterfaceProxyWithoutTarget(System.Type,System.Type[],Castle.DynamicProxy.ProxyGenerationOptions,Castle.Core.Interceptor.IInterceptor[])">
1065
+ <summary>
1066
+ Creates proxy object intercepting calls to members of interface <paramref name="interfaceToProxy"/> on target object generated at runtime with given <paramref name="interceptors"/>.
1067
+ </summary>
1068
+ <param name="interfaceToProxy">Type of the interface which will be proxied.</param>
1069
+ <param name="options">The proxy generation options used to influence generated proxy type and object.</param>
1070
+ <param name="additionalInterfacesToProxy">Additional interface types. Calls to their members will be proxied as well.</param>
1071
+ <param name="interceptors">The interceptors called during the invocation of proxied methods.</param>
1072
+ <returns>
1073
+ Object proxying calls to members of <paramref name="interfaceToProxy"/> and <paramref name="additionalInterfacesToProxy"/> types on generated target object.
1074
+ </returns>
1075
+ <exception cref="T:System.ArgumentNullException">Thrown when given <paramref name="interfaceToProxy"/> object is a null reference (Nothing in Visual Basic).</exception>
1076
+ <exception cref="T:System.ArgumentNullException">Thrown when given <paramref name="interceptors"/> array is a null reference (Nothing in Visual Basic).</exception>
1077
+ <exception cref="T:System.ArgumentException">Thrown when given <paramref name="interfaceToProxy"/> or any of <paramref name="additionalInterfacesToProxy"/> is a generic type definition.</exception>
1078
+ <exception cref="T:System.ArgumentException">Thrown when given <paramref name="interfaceToProxy"/> is not an interface type.</exception>
1079
+ <remarks>
1080
+ Since this method uses an empty-shell implementation of <paramref name="additionalInterfacesToProxy"/> to proxy generated at runtime, the actual implementation of proxied methods must be provided by given <see cref="T:Castle.Core.Interceptor.IInterceptor"/> implementations.
1081
+ They are responsible for setting return value (and out parameters) on proxied methods. It is also illegal for an interceptor to call <see cref="M:Castle.Core.Interceptor.IInvocation.Proceed"/>, since there's no actual implementation to proceed with.
1082
+ This method uses <see cref="T:Castle.DynamicProxy.IProxyBuilder"/> implementation to generate a proxy type.
1083
+ As such caller should expect any type of exception that given <see cref="T:Castle.DynamicProxy.IProxyBuilder"/> implementation may throw.
1084
+ </remarks>
1085
+ </member>
1086
+ <member name="M:Castle.DynamicProxy.ProxyGenerator.CreateClassProxy``1(Castle.Core.Interceptor.IInterceptor[])">
1087
+ <summary>
1088
+ Creates proxy object intercepting calls to virtual members of type <typeparamref name="TClass"/> on newly created instance of that type with given <paramref name="interceptors"/>.
1089
+ </summary>
1090
+ <typeparam name="TClass">Type of class which will be proxied.</typeparam>
1091
+ <param name="interceptors">The interceptors called during the invocation of proxied methods.</param>
1092
+ <returns>
1093
+ New object of type <typeparamref name="TClass"/> proxying calls to virtual members of <typeparamref name="TClass"/> type.
1094
+ </returns>
1095
+ <exception cref="T:System.ArgumentException">Thrown when given <typeparamref name="TClass"/> is not a class type.</exception>
1096
+ <exception cref="T:System.ArgumentException">Thrown when no default constructor exists on type <typeparamref name="TClass"/>.</exception>
1097
+ <exception cref="T:System.Reflection.TargetInvocationException">Thrown when default constructor of type <typeparamref name="TClass"/> throws an exception.</exception>
1098
+ <remarks>
1099
+ This method uses <see cref="T:Castle.DynamicProxy.IProxyBuilder"/> implementation to generate a proxy type.
1100
+ As such caller should expect any type of exception that given <see cref="T:Castle.DynamicProxy.IProxyBuilder"/> implementation may throw.
1101
+ </remarks>
1102
+ </member>
1103
+ <member name="M:Castle.DynamicProxy.ProxyGenerator.CreateClassProxy``1(Castle.DynamicProxy.ProxyGenerationOptions,Castle.Core.Interceptor.IInterceptor[])">
1104
+ <summary>
1105
+ Creates proxy object intercepting calls to virtual members of type <typeparamref name="TClass"/> on newly created instance of that type with given <paramref name="interceptors"/>.
1106
+ </summary>
1107
+ <typeparam name="TClass">Type of class which will be proxied.</typeparam>
1108
+ <param name="options">The proxy generation options used to influence generated proxy type and object.</param>
1109
+ <param name="interceptors">The interceptors called during the invocation of proxied methods.</param>
1110
+ <returns>
1111
+ New object of type <typeparamref name="TClass"/> proxying calls to virtual members of <typeparamref name="TClass"/> type.
1112
+ </returns>
1113
+ <exception cref="T:System.ArgumentException">Thrown when given <typeparamref name="TClass"/> is not a class type.</exception>
1114
+ <exception cref="T:System.ArgumentException">Thrown when no default constructor exists on type <typeparamref name="TClass"/>.</exception>
1115
+ <exception cref="T:System.Reflection.TargetInvocationException">Thrown when default constructor of type <typeparamref name="TClass"/> throws an exception.</exception>
1116
+ <remarks>
1117
+ This method uses <see cref="T:Castle.DynamicProxy.IProxyBuilder"/> implementation to generate a proxy type.
1118
+ As such caller should expect any type of exception that given <see cref="T:Castle.DynamicProxy.IProxyBuilder"/> implementation may throw.
1119
+ </remarks>
1120
+ </member>
1121
+ <member name="M:Castle.DynamicProxy.ProxyGenerator.CreateClassProxy(System.Type,System.Type[],Castle.Core.Interceptor.IInterceptor[])">
1122
+ <summary>
1123
+ Creates proxy object intercepting calls to virtual members of type <paramref name="classToProxy"/> on newly created instance of that type with given <paramref name="interceptors"/>.
1124
+ </summary>
1125
+ <param name="classToProxy">Type of class which will be proxied.</param>
1126
+ <param name="additionalInterfacesToProxy">Additional interface types. Calls to their members will be proxied as well.</param>
1127
+ <param name="interceptors">The interceptors called during the invocation of proxied methods.</param>
1128
+ <returns>
1129
+ New object of type <paramref name="classToProxy"/> proxying calls to virtual members of <paramref name="classToProxy"/> and <paramref name="additionalInterfacesToProxy"/> types.
1130
+ </returns>
1131
+ <exception cref="T:System.ArgumentNullException">Thrown when given <paramref name="classToProxy"/> object is a null reference (Nothing in Visual Basic).</exception>
1132
+ <exception cref="T:System.ArgumentException">Thrown when given <paramref name="classToProxy"/> or any of <paramref name="additionalInterfacesToProxy"/> is a generic type definition.</exception>
1133
+ <exception cref="T:System.ArgumentException">Thrown when given <paramref name="classToProxy"/> is not a class type.</exception>
1134
+ <exception cref="T:System.ArgumentException">Thrown when no default constructor exists on type <paramref name="classToProxy"/>.</exception>
1135
+ <exception cref="T:System.Reflection.TargetInvocationException">Thrown when default constructor of type <paramref name="classToProxy"/> throws an exception.</exception>
1136
+ <remarks>
1137
+ This method uses <see cref="T:Castle.DynamicProxy.IProxyBuilder"/> implementation to generate a proxy type.
1138
+ As such caller should expect any type of exception that given <see cref="T:Castle.DynamicProxy.IProxyBuilder"/> implementation may throw.
1139
+ </remarks>
1140
+ </member>
1141
+ <member name="M:Castle.DynamicProxy.ProxyGenerator.CreateClassProxy(System.Type,Castle.Core.Interceptor.IInterceptor[],System.Object[])">
1142
+ <summary>
1143
+ Creates proxy object intercepting calls to virtual members of type <paramref name="classToProxy"/> on newly created instance of that type with given <paramref name="interceptors"/>.
1144
+ </summary>
1145
+ <param name="classToProxy">Type of class which will be proxied.</param>
1146
+ <param name="constructorArguments">Arguments of constructor of type <paramref name="classToProxy"/> which should be used to create a new instance of that type.</param>
1147
+ <param name="interceptors">The interceptors called during the invocation of proxied methods.</param>
1148
+ <returns>
1149
+ New object of type <paramref name="classToProxy"/> proxying calls to virtual members of <paramref name="classToProxy"/> type.
1150
+ </returns>
1151
+ <exception cref="T:System.ArgumentNullException">Thrown when given <paramref name="classToProxy"/> object is a null reference (Nothing in Visual Basic).</exception>
1152
+ <exception cref="T:System.ArgumentException">Thrown when given <paramref name="classToProxy"/> is a generic type definition.</exception>
1153
+ <exception cref="T:System.ArgumentException">Thrown when given <paramref name="classToProxy"/> is not a class type.</exception>
1154
+ <exception cref="T:System.ArgumentException">Thrown when no constructor exists on type <paramref name="classToProxy"/> with parameters matching <paramref name="constructorArguments"/>.</exception>
1155
+ <exception cref="T:System.Reflection.TargetInvocationException">Thrown when constructor of type <paramref name="classToProxy"/> throws an exception.</exception>
1156
+ <remarks>
1157
+ This method uses <see cref="T:Castle.DynamicProxy.IProxyBuilder"/> implementation to generate a proxy type.
1158
+ As such caller should expect any type of exception that given <see cref="T:Castle.DynamicProxy.IProxyBuilder"/> implementation may throw.
1159
+ </remarks>
1160
+ </member>
1161
+ <member name="M:Castle.DynamicProxy.ProxyGenerator.CreateClassProxy(System.Type,Castle.DynamicProxy.ProxyGenerationOptions,System.Object[],Castle.Core.Interceptor.IInterceptor[])">
1162
+ <summary>
1163
+ Creates proxy object intercepting calls to virtual members of type <paramref name="classToProxy"/> on newly created instance of that type with given <paramref name="interceptors"/>.
1164
+ </summary>
1165
+ <param name="classToProxy">Type of class which will be proxied.</param>
1166
+ <param name="options">The proxy generation options used to influence generated proxy type and object.</param>
1167
+ <param name="constructorArguments">Arguments of constructor of type <paramref name="classToProxy"/> which should be used to create a new instance of that type.</param>
1168
+ <param name="interceptors">The interceptors called during the invocation of proxied methods.</param>
1169
+ <returns>
1170
+ New object of type <paramref name="classToProxy"/> proxying calls to virtual members of <paramref name="classToProxy"/> type.
1171
+ </returns>
1172
+ <exception cref="T:System.ArgumentNullException">Thrown when given <paramref name="classToProxy"/> object is a null reference (Nothing in Visual Basic).</exception>
1173
+ <exception cref="T:System.ArgumentException">Thrown when given <paramref name="classToProxy"/> is a generic type definition.</exception>
1174
+ <exception cref="T:System.ArgumentException">Thrown when given <paramref name="classToProxy"/> is not a class type.</exception>
1175
+ <exception cref="T:System.ArgumentException">Thrown when no constructor exists on type <paramref name="classToProxy"/> with parameters matching <paramref name="constructorArguments"/>.</exception>
1176
+ <exception cref="T:System.Reflection.TargetInvocationException">Thrown when constructor of type <paramref name="classToProxy"/> throws an exception.</exception>
1177
+ <remarks>
1178
+ This method uses <see cref="T:Castle.DynamicProxy.IProxyBuilder"/> implementation to generate a proxy type.
1179
+ As such caller should expect any type of exception that given <see cref="T:Castle.DynamicProxy.IProxyBuilder"/> implementation may throw.
1180
+ </remarks>
1181
+ </member>
1182
+ <member name="M:Castle.DynamicProxy.ProxyGenerator.CreateClassProxy(System.Type,System.Object[],Castle.Core.Interceptor.IInterceptor[])">
1183
+ <summary>
1184
+ Creates proxy object intercepting calls to virtual members of type <paramref name="classToProxy"/> on newly created instance of that type with given <paramref name="interceptors"/>.
1185
+ </summary>
1186
+ <param name="classToProxy">Type of class which will be proxied.</param>
1187
+ <param name="constructorArguments">Arguments of constructor of type <paramref name="classToProxy"/> which should be used to create a new instance of that type.</param>
1188
+ <param name="interceptors">The interceptors called during the invocation of proxied methods.</param>
1189
+ <returns>
1190
+ New object of type <paramref name="classToProxy"/> proxying calls to virtual members of <paramref name="classToProxy"/> type.
1191
+ </returns>
1192
+ <exception cref="T:System.ArgumentNullException">Thrown when given <paramref name="classToProxy"/> object is a null reference (Nothing in Visual Basic).</exception>
1193
+ <exception cref="T:System.ArgumentException">Thrown when given <paramref name="classToProxy"/> is a generic type definition.</exception>
1194
+ <exception cref="T:System.ArgumentException">Thrown when given <paramref name="classToProxy"/> is not a class type.</exception>
1195
+ <exception cref="T:System.ArgumentException">Thrown when no constructor exists on type <paramref name="classToProxy"/> with parameters matching <paramref name="constructorArguments"/>.</exception>
1196
+ <exception cref="T:System.Reflection.TargetInvocationException">Thrown when constructor of type <paramref name="classToProxy"/> throws an exception.</exception>
1197
+ <remarks>
1198
+ This method uses <see cref="T:Castle.DynamicProxy.IProxyBuilder"/> implementation to generate a proxy type.
1199
+ As such caller should expect any type of exception that given <see cref="T:Castle.DynamicProxy.IProxyBuilder"/> implementation may throw.
1200
+ </remarks>
1201
+ </member>
1202
+ <member name="M:Castle.DynamicProxy.ProxyGenerator.CreateClassProxy(System.Type,Castle.Core.Interceptor.IInterceptor[])">
1203
+ <summary>
1204
+ Creates proxy object intercepting calls to virtual members of type <paramref name="classToProxy"/> on newly created instance of that type with given <paramref name="interceptors"/>.
1205
+ </summary>
1206
+ <param name="classToProxy">Type of class which will be proxied.</param>
1207
+ <param name="interceptors">The interceptors called during the invocation of proxied methods.</param>
1208
+ <returns>
1209
+ New object of type <paramref name="classToProxy"/> proxying calls to virtual members of <paramref name="classToProxy"/> type.
1210
+ </returns>
1211
+ <exception cref="T:System.ArgumentNullException">Thrown when given <paramref name="classToProxy"/> object is a null reference (Nothing in Visual Basic).</exception>
1212
+ <exception cref="T:System.ArgumentException">Thrown when given <paramref name="classToProxy"/> is a generic type definition.</exception>
1213
+ <exception cref="T:System.ArgumentException">Thrown when given <paramref name="classToProxy"/> is not a class type.</exception>
1214
+ <exception cref="T:System.ArgumentException">Thrown when no parameterless constructor exists on type <paramref name="classToProxy"/>.</exception>
1215
+ <exception cref="T:System.Reflection.TargetInvocationException">Thrown when constructor of type <paramref name="classToProxy"/> throws an exception.</exception>
1216
+ <remarks>
1217
+ This method uses <see cref="T:Castle.DynamicProxy.IProxyBuilder"/> implementation to generate a proxy type.
1218
+ As such caller should expect any type of exception that given <see cref="T:Castle.DynamicProxy.IProxyBuilder"/> implementation may throw.
1219
+ </remarks>
1220
+ </member>
1221
+ <member name="M:Castle.DynamicProxy.ProxyGenerator.CreateClassProxy(System.Type,Castle.DynamicProxy.ProxyGenerationOptions,Castle.Core.Interceptor.IInterceptor[])">
1222
+ <summary>
1223
+ Creates proxy object intercepting calls to virtual members of type <paramref name="classToProxy"/> on newly created instance of that type with given <paramref name="interceptors"/>.
1224
+ </summary>
1225
+ <param name="classToProxy">Type of class which will be proxied.</param>
1226
+ <param name="options">The proxy generation options used to influence generated proxy type and object.</param>
1227
+ <param name="interceptors">The interceptors called during the invocation of proxied methods.</param>
1228
+ <returns>
1229
+ New object of type <paramref name="classToProxy"/> proxying calls to virtual members of <paramref name="classToProxy"/> type.
1230
+ </returns>
1231
+ <exception cref="T:System.ArgumentNullException">Thrown when given <paramref name="classToProxy"/> object is a null reference (Nothing in Visual Basic).</exception>
1232
+ <exception cref="T:System.ArgumentNullException">Thrown when given <paramref name="options"/> object is a null reference (Nothing in Visual Basic).</exception>
1233
+ <exception cref="T:System.ArgumentException">Thrown when given <paramref name="classToProxy"/> is a generic type definition.</exception>
1234
+ <exception cref="T:System.ArgumentException">Thrown when given <paramref name="classToProxy"/> is not a class type.</exception>
1235
+ <exception cref="T:System.ArgumentException">Thrown when no default constructor exists on type <paramref name="classToProxy"/>.</exception>
1236
+ <exception cref="T:System.Reflection.TargetInvocationException">Thrown when default constructor of type <paramref name="classToProxy"/> throws an exception.</exception>
1237
+ <remarks>
1238
+ This method uses <see cref="T:Castle.DynamicProxy.IProxyBuilder"/> implementation to generate a proxy type.
1239
+ As such caller should expect any type of exception that given <see cref="T:Castle.DynamicProxy.IProxyBuilder"/> implementation may throw.
1240
+ </remarks>
1241
+ </member>
1242
+ <member name="M:Castle.DynamicProxy.ProxyGenerator.CreateClassProxy(System.Type,System.Type[],Castle.DynamicProxy.ProxyGenerationOptions,Castle.Core.Interceptor.IInterceptor[])">
1243
+ <summary>
1244
+ Creates proxy object intercepting calls to virtual members of type <paramref name="classToProxy"/> on newly created instance of that type with given <paramref name="interceptors"/>.
1245
+ </summary>
1246
+ <param name="classToProxy">Type of class which will be proxied.</param>
1247
+ <param name="additionalInterfacesToProxy">Additional interface types. Calls to their members will be proxied as well.</param>
1248
+ <param name="options">The proxy generation options used to influence generated proxy type and object.</param>
1249
+ <param name="interceptors">The interceptors called during the invocation of proxied methods.</param>
1250
+ <returns>
1251
+ New object of type <paramref name="classToProxy"/> proxying calls to virtual members of <paramref name="classToProxy"/> and <paramref name="additionalInterfacesToProxy"/> types.
1252
+ </returns>
1253
+ <exception cref="T:System.ArgumentNullException">Thrown when given <paramref name="classToProxy"/> object is a null reference (Nothing in Visual Basic).</exception>
1254
+ <exception cref="T:System.ArgumentNullException">Thrown when given <paramref name="options"/> object is a null reference (Nothing in Visual Basic).</exception>
1255
+ <exception cref="T:System.ArgumentException">Thrown when given <paramref name="classToProxy"/> or any of <paramref name="additionalInterfacesToProxy"/> is a generic type definition.</exception>
1256
+ <exception cref="T:System.ArgumentException">Thrown when given <paramref name="classToProxy"/> is not a class type.</exception>
1257
+ <exception cref="T:System.ArgumentException">Thrown when no default constructor exists on type <paramref name="classToProxy"/>.</exception>
1258
+ <exception cref="T:System.Reflection.TargetInvocationException">Thrown when default constructor of type <paramref name="classToProxy"/> throws an exception.</exception>
1259
+ <remarks>
1260
+ This method uses <see cref="T:Castle.DynamicProxy.IProxyBuilder"/> implementation to generate a proxy type.
1261
+ As such caller should expect any type of exception that given <see cref="T:Castle.DynamicProxy.IProxyBuilder"/> implementation may throw.
1262
+ </remarks>
1263
+ </member>
1264
+ <member name="M:Castle.DynamicProxy.ProxyGenerator.CreateClassProxy(System.Type,System.Type[],Castle.DynamicProxy.ProxyGenerationOptions,System.Object[],Castle.Core.Interceptor.IInterceptor[])">
1265
+ <summary>
1266
+ Creates proxy object intercepting calls to virtual members of type <paramref name="classToProxy"/> on newly created instance of that type with given <paramref name="interceptors"/>.
1267
+ </summary>
1268
+ <param name="classToProxy">Type of class which will be proxied.</param>
1269
+ <param name="additionalInterfacesToProxy">Additional interface types. Calls to their members will be proxied as well.</param>
1270
+ <param name="options">The proxy generation options used to influence generated proxy type and object.</param>
1271
+ <param name="constructorArguments">Arguments of constructor of type <paramref name="classToProxy"/> which should be used to create a new instance of that type.</param>
1272
+ <param name="interceptors">The interceptors called during the invocation of proxied methods.</param>
1273
+ <returns>
1274
+ New object of type <paramref name="classToProxy"/> proxying calls to virtual members of <paramref name="classToProxy"/> and <paramref name="additionalInterfacesToProxy"/> types.
1275
+ </returns>
1276
+ <exception cref="T:System.ArgumentNullException">Thrown when given <paramref name="classToProxy"/> object is a null reference (Nothing in Visual Basic).</exception>
1277
+ <exception cref="T:System.ArgumentNullException">Thrown when given <paramref name="options"/> object is a null reference (Nothing in Visual Basic).</exception>
1278
+ <exception cref="T:System.ArgumentException">Thrown when given <paramref name="classToProxy"/> or any of <paramref name="additionalInterfacesToProxy"/> is a generic type definition.</exception>
1279
+ <exception cref="T:System.ArgumentException">Thrown when given <paramref name="classToProxy"/> is not a class type.</exception>
1280
+ <exception cref="T:System.ArgumentException">Thrown when no constructor exists on type <paramref name="classToProxy"/> with parameters matching <paramref name="constructorArguments"/>.</exception>
1281
+ <exception cref="T:System.Reflection.TargetInvocationException">Thrown when constructor of type <paramref name="classToProxy"/> throws an exception.</exception>
1282
+ <remarks>
1283
+ This method uses <see cref="T:Castle.DynamicProxy.IProxyBuilder"/> implementation to generate a proxy type.
1284
+ As such caller should expect any type of exception that given <see cref="T:Castle.DynamicProxy.IProxyBuilder"/> implementation may throw.
1285
+ </remarks>
1286
+ </member>
1287
+ <member name="M:Castle.DynamicProxy.ProxyGenerator.CreateClassProxyType(System.Type,System.Type[],Castle.DynamicProxy.ProxyGenerationOptions)">
1288
+ <summary>
1289
+ Creates the proxy type for class proxy with given <paramref name="classToProxy"/> class, implementing given <paramref name="additionalInterfacesToProxy"/> and using provided <paramref name="options"/>.
1290
+ </summary>
1291
+ <param name="classToProxy">The base class for proxy type.</param>
1292
+ <param name="additionalInterfacesToProxy">The interfaces that proxy type should implement.</param>
1293
+ <param name="options">The options for proxy generation process.</param>
1294
+ <returns><see cref="T:System.Type"/> of proxy.</returns>
1295
+ </member>
1296
+ <member name="M:Castle.DynamicProxy.ProxyGenerator.CreateInterfaceProxyTypeWithTarget(System.Type,System.Type[],System.Type,Castle.DynamicProxy.ProxyGenerationOptions)">
1297
+ <summary>
1298
+ Creates the proxy type for interface proxy with target for given <paramref name="interfaceToProxy"/> interface, implementing given <paramref name="additionalInterfacesToProxy"/> on given <paramref name="targetType"/> and using provided <paramref name="options"/>.
1299
+ </summary>
1300
+ <param name="interfaceToProxy">The interface proxy type should implement.</param>
1301
+ <param name="additionalInterfacesToProxy">The additional interfaces proxy type should implement.</param>
1302
+ <param name="targetType">Actual type that the proxy type will encompass.</param>
1303
+ <param name="options">The options for proxy generation process.</param>
1304
+ <returns><see cref="T:System.Type"/> of proxy.</returns>
1305
+ </member>
1306
+ <member name="M:Castle.DynamicProxy.ProxyGenerator.CreateInterfaceProxyTypeWithTargetInterface(System.Type,System.Type[],Castle.DynamicProxy.ProxyGenerationOptions)">
1307
+ <summary>
1308
+ Creates the proxy type for interface proxy with target interface for given <paramref name="interfaceToProxy"/> interface, implementing given <paramref name="additionalInterfacesToProxy"/> on given <paramref name="targetType"/> and using provided <paramref name="options"/>.
1309
+ </summary>
1310
+ <param name="interfaceToProxy">The interface proxy type should implement.</param>
1311
+ <param name="additionalInterfacesToProxy">The additional interfaces proxy type should implement.</param>
1312
+ <param name="options">The options for proxy generation process.</param>
1313
+ <returns><see cref="T:System.Type"/> of proxy.</returns>
1314
+ </member>
1315
+ <member name="M:Castle.DynamicProxy.ProxyGenerator.CreateInterfaceProxyTypeWithoutTarget(System.Type,System.Type[],Castle.DynamicProxy.ProxyGenerationOptions)">
1316
+ <summary>
1317
+ Creates the proxy type for interface proxy without target for given <paramref name="interfaceToProxy"/> interface, implementing given <paramref name="additionalInterfacesToProxy"/> and using provided <paramref name="options"/>.
1318
+ </summary>
1319
+ <param name="interfaceToProxy">The interface proxy type should implement.</param>
1320
+ <param name="additionalInterfacesToProxy">The additional interfaces proxy type should implement.</param>
1321
+ <param name="options">The options for proxy generation process.</param>
1322
+ <returns><see cref="T:System.Type"/> of proxy.</returns>
1323
+ </member>
1324
+ <member name="P:Castle.DynamicProxy.ProxyGenerator.Logger">
1325
+ <summary>
1326
+ Gets or sets the <see cref="T:Castle.Core.Logging.ILogger"/> that this <see cref="T:Castle.DynamicProxy.ProxyGenerator"/> log to.
1327
+ </summary>
1328
+ </member>
1329
+ <member name="P:Castle.DynamicProxy.ProxyGenerator.ProxyBuilder">
1330
+ <summary>
1331
+ Gets the proxy builder instance used to generate proxy types.
1332
+ </summary>
1333
+ <value>The proxy builder.</value>
1334
+ </member>
1335
+ <member name="M:Castle.DynamicProxy.SilverlightExtensions.Extensions.IsNested(System.Type)">
1336
+ <summary>
1337
+ The silverlight System.Type is missing the IsNested property so this exposes similar functionality.
1338
+ </summary>
1339
+ <param name="type"></param>
1340
+ <returns></returns>
1341
+ </member>
1342
+ <member name="T:Castle.DynamicProxy.SilverlightExtensions.EnumHelper">
1343
+ <summary>
1344
+ http://www.dolittle.com/blogs/einar/archive/2008/01/13/missing-enum-getvalues-when-doing-silverlight-for-instance.aspx
1345
+ </summary>
1346
+ </member>
1347
+ </members>
1348
+ </doc>