PageRenderTime 53ms CodeModel.GetById 19ms app.highlight 18ms RepoModel.GetById 2ms app.codeStats 1ms

/V2/trunk/LIB/Desktop/Unity/Microsoft.Practices.Unity.Interception.xml

#
XML | 1029 lines | 1025 code | 4 blank | 0 comment | 0 complexity | f9be7bb221c12a026cc743a8439ffe59 MD5 | raw file

Large files files are truncated, but you can click here to view the full file

  1<?xml version="1.0"?>
  2<doc>
  3    <assembly>
  4        <name>Microsoft.Practices.Unity.Interception</name>
  5    </assembly>
  6    <members>
  7        <member name="T:Microsoft.Practices.Unity.InterceptionExtension.IInterceptingProxy">
  8            <summary>
  9            This interface is implemented by all proxy objects, type or instance based.
 10            It gives access to the handler pipelines for each method so that they can
 11            be set.
 12            </summary>
 13        </member>
 14        <member name="M:Microsoft.Practices.Unity.InterceptionExtension.IInterceptingProxy.GetPipeline(System.Reflection.MethodBase)">
 15            <summary>
 16            Retrieve the pipeline assocated with the requested <paramref name="method"/>.
 17            </summary>
 18            <param name="method">Method for which the pipeline is being requested.</param>
 19            <returns>The handler pipeline for the given method. If no pipeline has
 20            been set, returns a new empty pipeline.</returns>
 21        </member>
 22        <member name="M:Microsoft.Practices.Unity.InterceptionExtension.IInterceptingProxy.SetPipeline(System.Reflection.MethodBase,Microsoft.Practices.Unity.InterceptionExtension.HandlerPipeline)">
 23            <summary>
 24            Set a new pipeline for a method.
 25            </summary>
 26            <param name="method">Method to apply the pipeline to.</param>
 27            <param name="pipeline">The new pipeline.</param>
 28        </member>
 29        <member name="T:Microsoft.Practices.Unity.InterceptionExtension.IInterceptor">
 30            <summary>
 31            Base interface for type and instance based interceptor classes.
 32            </summary>
 33        </member>
 34        <member name="M:Microsoft.Practices.Unity.InterceptionExtension.IInterceptor.CanIntercept(System.Type)">
 35            <summary>
 36            Can this interceptor generate a proxy for the given type?
 37            </summary>
 38            <param name="t">Type to check.</param>
 39            <returns>True if interception is possible, false if not.</returns>
 40        </member>
 41        <member name="M:Microsoft.Practices.Unity.InterceptionExtension.IInterceptor.GetInterceptableMethods(System.Type,System.Type)">
 42            <summary>
 43            Returns a sequence of methods on the given type that can be
 44            intercepted.
 45            </summary>
 46            <param name="interceptedType">Type that was specified when this interceptor
 47            was created (typically an interface).</param>
 48            <param name="implementationType">The concrete type of the implementing object.</param>
 49            <returns>Sequence of <see cref="T:System.Reflection.MethodInfo"/> objects.</returns>
 50        </member>
 51        <member name="M:Microsoft.Practices.Unity.InterceptionExtension.IInterceptor.MethodInfoForPipeline(Microsoft.Practices.Unity.InterceptionExtension.MethodImplementationInfo)">
 52            <summary>
 53            Given a <see cref="T:Microsoft.Practices.Unity.InterceptionExtension.MethodImplementationInfo"/>, return the appropriate
 54            <see cref="T:System.Reflection.MethodInfo"/> object to use to attach a <see cref="T:Microsoft.Practices.Unity.InterceptionExtension.HandlerPipeline"/>
 55            to so that the handlers will get called when the method gets called.
 56            </summary>
 57            <param name="methodInfo">Original <see cref="T:Microsoft.Practices.Unity.InterceptionExtension.MethodImplementationInfo"/> object that
 58            combines the <see cref="T:System.Reflection.MethodInfo"/>s for an interface method and the corresponding implementation.</param>
 59            <returns>The <see cref="T:System.Reflection.MethodInfo"/> object to pass to the <see cref="M:Microsoft.Practices.Unity.InterceptionExtension.IInterceptingProxy.SetPipeline(System.Reflection.MethodBase,Microsoft.Practices.Unity.InterceptionExtension.HandlerPipeline)"/> method.</returns>
 60        </member>
 61        <member name="T:Microsoft.Practices.Unity.InterceptionExtension.IInstanceInterceptionPolicy">
 62            <summary>
 63            An interface that determines when to intercept instances
 64            and which interceptor to use.
 65            </summary>
 66        </member>
 67        <member name="P:Microsoft.Practices.Unity.InterceptionExtension.IInstanceInterceptionPolicy.Interceptor">
 68            <summary>
 69            Interceptor to use.
 70            </summary>
 71        </member>
 72        <member name="T:Microsoft.Practices.Unity.InterceptionExtension.IInstanceInterceptor">
 73            <summary>
 74            Interface for interceptors that generate separate proxy
 75            objects to implement interception on instances.
 76            </summary>
 77        </member>
 78        <member name="M:Microsoft.Practices.Unity.InterceptionExtension.IInstanceInterceptor.CreateProxy(System.Type,System.Object)">
 79            <summary>
 80            Create a proxy object that provides interception for <paramref name="target"/>.
 81            </summary>
 82            <param name="t">Type to generate the proxy of.</param>
 83            <param name="target">Object to create the proxy for.</param>
 84            <returns>The proxy object.</returns>
 85        </member>
 86        <member name="T:Microsoft.Practices.Unity.InterceptionExtension.InstanceInterceptionPolicy">
 87            <summary>
 88            Implementation if <see cref="T:Microsoft.Practices.Unity.InterceptionExtension.IInstanceInterceptionPolicy"/>
 89            </summary>
 90        </member>
 91        <member name="M:Microsoft.Practices.Unity.InterceptionExtension.InstanceInterceptionPolicy.#ctor(Microsoft.Practices.Unity.InterceptionExtension.IInstanceInterceptor)">
 92            <summary>
 93            Create a new instance of <see cref="T:Microsoft.Practices.Unity.InterceptionExtension.InstanceInterceptionPolicy"/>.
 94            </summary>
 95            <param name="interceptor">Interceptor to store.</param>
 96        </member>
 97        <member name="P:Microsoft.Practices.Unity.InterceptionExtension.InstanceInterceptionPolicy.Interceptor">
 98            <summary>
 99            Interceptor to use.
100            </summary>
101        </member>
102        <member name="T:Microsoft.Practices.Unity.InterceptionExtension.InstanceInterceptionStrategy">
103            <summary>
104            A <see cref="T:Microsoft.Practices.ObjectBuilder2.IBuilderStrategy"/> that intercepts objects
105            in the build chain by creating a proxy object.
106            </summary>
107        </member>
108        <member name="M:Microsoft.Practices.Unity.InterceptionExtension.InstanceInterceptionStrategy.PostBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
109            <summary>
110            Called during the chain of responsibility for a build operation. The
111            PostBuildUp method is called when the chain has finished the PreBuildUp
112            phase and executes in reverse order from the PreBuildUp calls.
113            </summary>
114            <param name="context">Context of the build operation.</param>
115        </member>
116        <member name="T:Microsoft.Practices.Unity.InterceptionExtension.InterfaceInterceptor">
117            <summary>
118            An instance interceptor that works by generating a
119            proxy class on the fly for a single interface.
120            </summary>
121        </member>
122        <member name="M:Microsoft.Practices.Unity.InterceptionExtension.InterfaceInterceptor.CanIntercept(System.Type)">
123            <summary>
124            Can this interceptor generate a proxy for the given type?
125            </summary>
126            <param name="t">Type to check.</param>
127            <returns>True if interception is possible, false if not.</returns>
128        </member>
129        <member name="M:Microsoft.Practices.Unity.InterceptionExtension.InterfaceInterceptor.GetInterceptableMethods(System.Type,System.Type)">
130            <summary>
131            Returns a sequence of methods on the given type that can be
132            intercepted.
133            </summary>
134            <param name="interceptedType">Type that was specified when this interceptor
135            was created (typically an interface).</param>
136            <param name="implementationType">The concrete type of the implementing object.</param>
137            <returns>Sequence of <see cref="T:System.Reflection.MethodInfo"/> objects.</returns>
138        </member>
139        <member name="M:Microsoft.Practices.Unity.InterceptionExtension.InterfaceInterceptor.CreateProxy(System.Type,System.Object)">
140            <summary>
141            Create a proxy object that provides interception for <paramref name="target"/>.
142            </summary>
143            <param name="t">Type to generate the proxy of.</param>
144            <param name="target">Object to create the proxy for.</param>
145            <returns>The proxy object.</returns>
146        </member>
147        <member name="M:Microsoft.Practices.Unity.InterceptionExtension.InterfaceInterceptor.MethodInfoForPipeline(Microsoft.Practices.Unity.InterceptionExtension.MethodImplementationInfo)">
148            <summary>
149            Given a <see cref="T:Microsoft.Practices.Unity.InterceptionExtension.MethodImplementationInfo"/>, return the appropriate
150            <see cref="T:System.Reflection.MethodInfo"/> object to use to attach a <see cref="T:Microsoft.Practices.Unity.InterceptionExtension.HandlerPipeline"/>
151            to so that the handlers will get called when the method gets called.
152            </summary>
153            <param name="methodInfo">Original <see cref="T:Microsoft.Practices.Unity.InterceptionExtension.MethodImplementationInfo"/> object that
154            combines the <see cref="T:System.Reflection.MethodInfo"/>s for an interface method and the corresponding implementation.</param>
155            <returns>The <see cref="T:System.Reflection.MethodInfo"/> object to pass to the <see cref="M:Microsoft.Practices.Unity.InterceptionExtension.IInterceptingProxy.SetPipeline(System.Reflection.MethodBase,Microsoft.Practices.Unity.InterceptionExtension.HandlerPipeline)"/> method.</returns>
156        </member>
157        <member name="T:Microsoft.Practices.Unity.InterceptionExtension.InterfaceInterceptorClassGenerator">
158            <summary>
159            A class used to generate proxy classes for doing interception on
160            interfaces.
161            </summary>
162        </member>
163        <member name="M:Microsoft.Practices.Unity.InterceptionExtension.InterfaceInterceptorClassGenerator.#ctor(System.Type)">
164            <summary>
165            Create an instance of <see cref="T:Microsoft.Practices.Unity.InterceptionExtension.InterfaceInterceptorClassGenerator"/> that
166            can construct an intercepting proxy for the given interface.
167            </summary>
168            <param name="typeToIntercept">Type of the interface to intercept.</param>
169        </member>
170        <member name="M:Microsoft.Practices.Unity.InterceptionExtension.InterfaceInterceptorClassGenerator.CreateProxyType">
171            <summary>
172            Create the type to proxy the requested interface
173            </summary>
174            <returns></returns>
175        </member>
176        <member name="T:Microsoft.Practices.Unity.InterceptionExtension.InterceptingRealProxy">
177            <summary>
178            This class provides the remoting-based interception mechanism. It is
179            invoked by a call on the corresponding TransparentProxy
180            object. It routes calls through the handlers as appropriate.
181            </summary>
182        </member>
183        <member name="M:Microsoft.Practices.Unity.InterceptionExtension.InterceptingRealProxy.#ctor(System.Object,System.Type)">
184            <summary>
185            Creates a new <see cref="T:Microsoft.Practices.Unity.InterceptionExtension.InterceptingRealProxy"/> instance that applies
186            the given policies to the given target object.
187            </summary>
188            <param name="target">Target object to intercept calls to.</param>
189            <param name="classToProxy">Type to return as the type being proxied.</param>
190        </member>
191        <member name="M:Microsoft.Practices.Unity.InterceptionExtension.InterceptingRealProxy.GetPipeline(System.Reflection.MethodBase)">
192            <summary>
193            Retrieve the pipeline assocated with the requested <paramref name="method"/>.
194            </summary>
195            <param name="method">Method for which the pipeline is being requested.</param>
196            <returns>The handler pipeline for the given method. If no pipeline has
197            been set, returns a new empty pipeline.</returns>
198        </member>
199        <member name="M:Microsoft.Practices.Unity.InterceptionExtension.InterceptingRealProxy.SetPipeline(System.Reflection.MethodBase,Microsoft.Practices.Unity.InterceptionExtension.HandlerPipeline)">
200            <summary>
201            Set a new pipeline for a method.
202            </summary>
203            <param name="method">Method to apply the pipeline to.</param>
204            <param name="pipeline">The new pipeline.</param>
205        </member>
206        <member name="M:Microsoft.Practices.Unity.InterceptionExtension.InterceptingRealProxy.CanCastTo(System.Type,System.Object)">
207            <summary>
208            Checks whether the proxy that represents the specified object type can be cast to the type represented by the <see cref="T:System.Runtime.Remoting.IRemotingTypeInfo"></see> interface.
209            </summary>
210            
211            <returns>
212            true if cast will succeed; otherwise, false.
213            </returns>
214            
215            <param name="fromType">The type to cast to. </param>
216            <param name="o">The object for which to check casting. </param>
217            <exception cref="T:System.Security.SecurityException">The immediate caller makes the call through a reference to the interface and does not have infrastructure permission. </exception>
218        </member>
219        <member name="M:Microsoft.Practices.Unity.InterceptionExtension.InterceptingRealProxy.Invoke(System.Runtime.Remoting.Messaging.IMessage)">
220            <summary>
221            Executes a method call represented by the <paramref name="msg"/>
222            parameter. The CLR will call this method when a method is called
223            on the TransparentProxy. This method runs the invocation through
224            the call handler pipeline and finally sends it down to the
225            target object, and then back through the pipeline. 
226            </summary>
227            <param name="msg">An <see cref="T:System.Runtime.Remoting.Messaging.IMessage"/> object that contains the information
228            about the method call.</param>
229            <returns>An <see cref="T:Microsoft.Practices.Unity.InterceptionExtension.TransparentProxyMethodReturn"/> object contains the
230            information about the target method's return value.</returns>
231        </member>
232        <member name="M:Microsoft.Practices.Unity.InterceptionExtension.InterceptingRealProxy.TranslateInterfaceMethod(System.Reflection.MethodBase)">
233            <summary>
234            Given a MethodBase, if it's for an interface method, return the MethodBase
235            for the method that implements the interface method. If it's not an
236            interface method, do nothing.
237            </summary>
238            <param name="method">Original Method</param>
239            <returns>The implementing method.</returns>
240        </member>
241        <member name="P:Microsoft.Practices.Unity.InterceptionExtension.InterceptingRealProxy.Target">
242            <summary>
243            Returns the target of this intercepted call.
244            </summary>
245            <value>The target object.</value>
246        </member>
247        <member name="P:Microsoft.Practices.Unity.InterceptionExtension.InterceptingRealProxy.TypeName">
248            <summary>
249            Gets or sets the fully qualified type name of the server object in a <see cref="T:System.Runtime.Remoting.ObjRef"></see>.
250            </summary>
251            
252            <value>
253            The fully qualified type name of the server object in a <see cref="T:System.Runtime.Remoting.ObjRef"></see>.
254            </value>
255            
256            <exception cref="T:System.Security.SecurityException">The immediate caller makes the call through a reference to the interface and does not have infrastructure permission. </exception><PermissionSet><IPermission class="System.Security.Permissions.SecurityPermission, mscorlib, Version=2.0.3600.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" version="1" Flags="Infrastructure" /></PermissionSet>
257        </member>
258        <member name="T:Microsoft.Practices.Unity.InterceptionExtension.TransparentProxyInterceptor">
259            <summary>
260            An instance interceptor that uses remoting proxies to do the
261            interception.
262            </summary>
263        </member>
264        <member name="M:Microsoft.Practices.Unity.InterceptionExtension.TransparentProxyInterceptor.CanIntercept(System.Type)">
265            <summary>
266            Can this interceptor generate a proxy for the given type?
267            </summary>
268            <param name="t">Type to check.</param>
269            <returns>True if interception is possible, false if not.</returns>
270        </member>
271        <member name="M:Microsoft.Practices.Unity.InterceptionExtension.TransparentProxyInterceptor.GetInterceptableMethods(System.Type,System.Type)">
272            <summary>
273            Returns a sequence of methods on the given type that can be
274            intercepted.
275            </summary>
276            <param name="interceptedType">Type that was specified when this interceptor
277            was created (typically an interface).</param>
278            <param name="implementationType">The concrete type of the implementing object.</param>
279            <returns>Sequence of <see cref="T:System.Reflection.MethodInfo"/> objects.</returns>
280        </member>
281        <member name="M:Microsoft.Practices.Unity.InterceptionExtension.TransparentProxyInterceptor.CreateProxy(System.Type,System.Object)">
282            <summary>
283            Create a proxy object that provides interception for <paramref name="target"/>.
284            </summary>
285            <param name="t">Type to generate the proxy of.</param>
286            <param name="target">Object to create the proxy for.</param>
287            <returns>The proxy object.</returns>
288        </member>
289        <member name="M:Microsoft.Practices.Unity.InterceptionExtension.TransparentProxyInterceptor.MethodInfoForPipeline(Microsoft.Practices.Unity.InterceptionExtension.MethodImplementationInfo)">
290            <summary>
291            Given a <see cref="T:Microsoft.Practices.Unity.InterceptionExtension.MethodImplementationInfo"/>, return the appropriate
292            <see cref="T:System.Reflection.MethodInfo"/> object to use to attach a <see cref="T:Microsoft.Practices.Unity.InterceptionExtension.HandlerPipeline"/>
293            to so that the handlers will get called when the method gets called.
294            </summary>
295            <param name="methodInfo">Original <see cref="T:Microsoft.Practices.Unity.InterceptionExtension.MethodImplementationInfo"/> object that
296            combines the <see cref="T:System.Reflection.MethodInfo"/>s for an interface method and the corresponding implementation.</param>
297            <returns>The <see cref="T:System.Reflection.MethodInfo"/> object to pass to the <see cref="M:Microsoft.Practices.Unity.InterceptionExtension.IInterceptingProxy.SetPipeline(System.Reflection.MethodBase,Microsoft.Practices.Unity.InterceptionExtension.HandlerPipeline)"/> method.</returns>
298        </member>
299        <member name="T:Microsoft.Practices.Unity.InterceptionExtension.MethodImplementationInfo">
300            <summary>
301            A dumb data holder that returns the methodinfo for both an
302            interface method and the method that implements that interface
303            method.
304            </summary>
305        </member>
306        <member name="M:Microsoft.Practices.Unity.InterceptionExtension.MethodImplementationInfo.#ctor(System.Reflection.MethodInfo,System.Reflection.MethodInfo)">
307            <summary>
308            Construct a new <see cref="T:Microsoft.Practices.Unity.InterceptionExtension.MethodImplementationInfo"/> which holds
309            the given <see cref="T:System.Reflection.MethodInfo"/> objects.
310            </summary>
311            <param name="interfaceMethodInfo">MethodInfo for the interface method (may be null if no interface).</param>
312            <param name="implementationMethodInfo">MethodInfo for implementing method.</param>
313        </member>
314        <member name="M:Microsoft.Practices.Unity.InterceptionExtension.MethodImplementationInfo.Equals(System.Object)">
315            <summary>
316                                Determines whether the specified <see cref="T:System.Object" /> is equal to the current <see cref="T:System.Object" />.
317            </summary>
318            <returns>
319            true if the specified <see cref="T:System.Object" /> is equal to the current <see cref="T:System.Object" />; otherwise, false.
320            </returns>
321            <param name="obj">
322                                The <see cref="T:System.Object" /> to compare with the current <see cref="T:System.Object" />. 
323                            </param>
324            <exception cref="T:System.NullReferenceException">
325                                The <paramref name="obj" /> parameter is null.
326                            </exception><filterpriority>2</filterpriority>
327        </member>
328        <member name="M:Microsoft.Practices.Unity.InterceptionExtension.MethodImplementationInfo.GetHashCode">
329            <summary>
330                                Serves as a hash function for a particular type. 
331            </summary>
332            <returns>
333                                A hash code for the current <see cref="T:System.Object" />.
334            </returns>
335            <filterpriority>2</filterpriority>
336        </member>
337        <member name="M:Microsoft.Practices.Unity.InterceptionExtension.MethodImplementationInfo.op_Equality(Microsoft.Practices.Unity.InterceptionExtension.MethodImplementationInfo,Microsoft.Practices.Unity.InterceptionExtension.MethodImplementationInfo)">
338            <summary>
339            Standard equals operator
340            </summary>
341            <param name="left"></param>
342            <param name="right"></param>
343            <returns></returns>
344        </member>
345        <member name="M:Microsoft.Practices.Unity.InterceptionExtension.MethodImplementationInfo.op_Inequality(Microsoft.Practices.Unity.InterceptionExtension.MethodImplementationInfo,Microsoft.Practices.Unity.InterceptionExtension.MethodImplementationInfo)">
346            <summary>
347            standard not equal operator.
348            </summary>
349            <param name="left"></param>
350            <param name="right"></param>
351            <returns></returns>
352        </member>
353        <member name="M:Microsoft.Practices.Unity.InterceptionExtension.MethodImplementationInfo.ToString">
354            <summary>
355                                Returns a <see cref="T:System.String" /> that represents the current <see cref="T:System.Object" />.
356            </summary>
357            <returns>
358                                A <see cref="T:System.String" /> that represents the current <see cref="T:System.Object" />.
359            </returns>
360            <filterpriority>2</filterpriority>
361        </member>
362        <member name="P:Microsoft.Practices.Unity.InterceptionExtension.MethodImplementationInfo.InterfaceMethodInfo">
363            <summary>
364            The interface method MethodInfo.
365            </summary>
366        </member>
367        <member name="P:Microsoft.Practices.Unity.InterceptionExtension.MethodImplementationInfo.ImplementationMethodInfo">
368            <summary>
369            The implementing method MethodInfo.
370            </summary>
371        </member>
372        <member name="T:Microsoft.Practices.Unity.InterceptionExtension.ITypeInterceptionPolicy">
373            <summary>
374            Interface that controls when and how types get intercepted.
375            </summary>
376        </member>
377        <member name="P:Microsoft.Practices.Unity.InterceptionExtension.ITypeInterceptionPolicy.Interceptor">
378            <summary>
379            Interceptor to use to create type proxy
380            </summary>
381        </member>
382        <member name="P:Microsoft.Practices.Unity.InterceptionExtension.ITypeInterceptionPolicy.ProxyType">
383            <summary>
384            Cache for proxied type.
385            </summary>
386        </member>
387        <member name="T:Microsoft.Practices.Unity.InterceptionExtension.ITypeInterceptor">
388            <summary>
389            Interface for interceptor objects that generate
390            proxy types.
391            </summary>
392        </member>
393        <member name="M:Microsoft.Practices.Unity.InterceptionExtension.ITypeInterceptor.CreateProxyType(System.Type)">
394            <summary>
395            Create a type to proxy for the given type <paramref name="t"/>.
396            </summary>
397            <param name="t">Type to proxy.</param>
398            <returns>New type that can be instantiated instead of the
399            original type t, and supports interception.</returns>
400        </member>
401        <member name="T:Microsoft.Practices.Unity.InterceptionExtension.TypeInterceptionPolicy">
402            <summary>
403            Implementation of <see cref="T:Microsoft.Practices.Unity.InterceptionExtension.ITypeInterceptionPolicy"/>.
404            </summary>
405        </member>
406        <member name="M:Microsoft.Practices.Unity.InterceptionExtension.TypeInterceptionPolicy.#ctor(Microsoft.Practices.Unity.InterceptionExtension.ITypeInterceptor)">
407            <summary>
408            Create a new instance of <see cref="T:Microsoft.Practices.Unity.InterceptionExtension.TypeInterceptionPolicy"/> that
409            uses the given <see cref="T:Microsoft.Practices.Unity.InterceptionExtension.ITypeInterceptor"/>.
410            </summary>
411            <param name="interceptor">Interceptor to use.</param>
412        </member>
413        <member name="P:Microsoft.Practices.Unity.InterceptionExtension.TypeInterceptionPolicy.Interceptor">
414            <summary>
415            Interceptor to use to create type proxy
416            </summary>
417        </member>
418        <member name="P:Microsoft.Practices.Unity.InterceptionExtension.TypeInterceptionPolicy.ProxyType">
419            <summary>
420            Cache for proxied type.
421            </summary>
422        </member>
423        <member name="T:Microsoft.Practices.Unity.InterceptionExtension.TypeInterceptionStrategy">
424            <summary>
425            A <see cref="T:Microsoft.Practices.ObjectBuilder2.IBuilderStrategy"/> that hooks up type interception. It looks for
426            a <see cref="T:Microsoft.Practices.Unity.InterceptionExtension.ITypeInterceptionPolicy"/> for the current build key, or the current
427            build type. If present, it substitutes types so that that proxy class gets
428            built up instead. On the way back, it hooks up the appropriate handlers.
429             </summary>
430        </member>
431        <member name="M:Microsoft.Practices.Unity.InterceptionExtension.TypeInterceptionStrategy.PreBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
432            <summary>
433            Called during the chain of responsibility for a build operation. The
434            PreBuildUp method is called when the chain is being executed in the
435            forward direction.
436            </summary>
437            <remarks>In this class, PreBuildUp is responsible for figuring out if the
438            class is proxiable, and if so, replacing it with a proxy class.</remarks>
439            <param name="context">Context of the build operation.</param>
440        </member>
441        <member name="M:Microsoft.Practices.Unity.InterceptionExtension.TypeInterceptionStrategy.PostBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
442            <summary>
443            Called during the chain of responsibility for a build operation. The
444            PostBuildUp method is called when the chain has finished the PreBuildUp
445            phase and executes in reverse order from the PreBuildUp calls.
446            </summary>
447            <remarks>In this class, PostBuildUp checks to see if the object was proxyable,
448            and if it was, wires up the handlers.</remarks>
449            <param name="context">Context of the build operation.</param>
450        </member>
451        <member name="T:Microsoft.Practices.Unity.InterceptionExtension.InterceptingProxyImplementor">
452            <summary>
453            This class provides the code needed to implement the <see cref="T:Microsoft.Practices.Unity.InterceptionExtension.IInterceptingProxy"/>
454            interface on a class.
455            </summary>
456        </member>
457        <member name="T:Microsoft.Practices.Unity.InterceptionExtension.MethodSorter">
458            <summary>
459            A utility class that takes a set of <see cref="T:System.Reflection.MethodInfo"/>s
460            and pulls out shadowed methods, only returning the ones that
461            are actually accessible to be overriden.
462            </summary>
463        </member>
464        <member name="M:Microsoft.Practices.Unity.InterceptionExtension.MethodSorter.GroupMethodsByName(System.Collections.Generic.IEnumerable{System.Reflection.MethodInfo})">
465            <summary>
466            Take the list of methods and put them together into lists index by method name.
467            </summary>
468            <param name="methodsToSort">Methods to sort through.</param>
469        </member>
470        <member name="M:Microsoft.Practices.Unity.InterceptionExtension.MethodSorter.RemoveHiddenOverloads(System.Collections.Generic.IEnumerable{System.Reflection.MethodInfo})">
471            <summary>
472            Given a list of overloads for a method, return only those methods
473            that are actually visible. In other words, if there's a "new foo" method
474            somewhere, return only the new one, not the one from the base class
475            that's now hidden.
476            </summary>
477            <param name="methods">Sequence of methods to process.</param>
478            <returns>Sequence of returned methods.</returns>
479        </member>
480        <member name="M:Microsoft.Practices.Unity.InterceptionExtension.MethodSorter.GroupOverloadedMethods(System.Collections.Generic.IList{System.Reflection.MethodInfo})">
481            <summary>
482            Take a semi-randomly ordered set of methods on a type and
483            sort them into groups by name and by parameter list.
484            </summary>
485            <param name="sortedMethods">The list of methods.</param>
486            <returns>Sequence of lists of methods, grouped by method name.</returns>
487        </member>
488        <member name="M:Microsoft.Practices.Unity.InterceptionExtension.MethodSorter.SelectMostDerivedOverload(System.Collections.Generic.IList{System.Reflection.MethodInfo})">
489            <summary>
490            Given a set of hiding overloads, return only the currently visible one.
491            </summary>
492            <param name="overloads">The set of overloads.</param>
493            <returns>The most visible one.</returns>
494        </member>
495        <member name="M:Microsoft.Practices.Unity.InterceptionExtension.MethodSorter.DeclarationDepth(System.Reflection.MethodInfo)">
496            <summary>
497            Given a method, return a value indicating how deeply in the
498            inheritance hierarchy the method is declared. Current type = 0,
499            parent = 1, grandparent = 2, etc.
500            </summary>
501            <param name="method">Method to check.</param>
502            <returns>Declaration depth</returns>
503        </member>
504        <member name="M:Microsoft.Practices.Unity.InterceptionExtension.MethodSorter.CompareMethodInfosByParameterLists(System.Reflection.MethodInfo,System.Reflection.MethodInfo)">
505            <summary>
506            A <see cref="T:System.Comparison`1"/> implementation that can compare two <see cref="T:System.Reflection.MethodInfo"/>
507            based on their parameter lists.
508            </summary>
509            <param name="left">First <see cref="T:System.Reflection.MethodInfo"/> to compare.</param>
510            <param name="right">Second <see cref="T:System.Reflection.MethodInfo"/> to compare.</param>
511            <returns>&lt; 0, 0, or &gt; 0 based on which one is "greater" than the other.</returns>
512        </member>
513        <member name="M:Microsoft.Practices.Unity.InterceptionExtension.MethodSorter.CompareParameterLists(System.Reflection.ParameterInfo[],System.Reflection.ParameterInfo[])">
514            <summary>
515            Compare two parameter lists.
516            </summary>
517            <param name="left">First parameter list.</param>
518            <param name="right">Second parameter list.</param>
519            <returns>&lt; 0, 0, or &gt; 0.</returns>
520        </member>
521        <member name="M:Microsoft.Practices.Unity.InterceptionExtension.MethodSorter.CompareParameterInfo(System.Reflection.ParameterInfo,System.Reflection.ParameterInfo)">
522            <summary>
523            Compare two <see cref="T:System.Reflection.ParameterInfo"/> objects by type.
524            </summary>
525            <param name="left">First <see cref="T:System.Reflection.ParameterInfo"/></param>
526            <param name="right">First <see cref="T:System.Reflection.ParameterInfo"/></param>
527            <returns>&lt; 0, 0, or &gt; 0</returns>
528        </member>
529        <member name="T:Microsoft.Practices.Unity.InterceptionExtension.VirtualMethodInterceptor">
530            <summary>
531            A type based interceptor that works by generated a new class
532            on the fly that derives from the target class.
533            </summary>
534        </member>
535        <member name="M:Microsoft.Practices.Unity.InterceptionExtension.VirtualMethodInterceptor.CanIntercept(System.Type)">
536            <summary>
537            Can this interceptor generate a proxy for the given type?
538            </summary>
539            <param name="t">Type to check.</param>
540            <returns>True if interception is possible, false if not.</returns>
541        </member>
542        <member name="M:Microsoft.Practices.Unity.InterceptionExtension.VirtualMethodInterceptor.GetInterceptableMethods(System.Type,System.Type)">
543            <summary>
544            Returns a sequence of methods on the given type that can be
545            intercepted.
546            </summary>
547            <param name="interceptedType">Type that was specified when this interceptor
548            was created (typically an interface).</param>
549            <param name="implementationType">The concrete type of the implementing object.</param>
550            <returns>Sequence of <see cref="T:System.Reflection.MethodInfo"/> objects.</returns>
551        </member>
552        <member name="M:Microsoft.Practices.Unity.InterceptionExtension.VirtualMethodInterceptor.CreateProxyType(System.Type)">
553            <summary>
554            Create a type to proxy for the given type <paramref name="t"/>.
555            </summary>
556            <param name="t">Type to proxy.</param>
557            <returns>New type that can be instantiated instead of the
558            original type t, and supports interception.</returns>
559        </member>
560        <member name="M:Microsoft.Practices.Unity.InterceptionExtension.VirtualMethodInterceptor.MethodInfoForPipeline(Microsoft.Practices.Unity.InterceptionExtension.MethodImplementationInfo)">
561            <summary>
562            Given a <see cref="T:Microsoft.Practices.Unity.InterceptionExtension.MethodImplementationInfo"/>, return the appropriate
563            <see cref="T:System.Reflection.MethodInfo"/> object to use to attach a <see cref="T:Microsoft.Practices.Unity.InterceptionExtension.HandlerPipeline"/>
564            to so that the handlers will get called when the method gets called.
565            </summary>
566            <param name="methodInfo">Original <see cref="T:Microsoft.Practices.Unity.InterceptionExtension.MethodImplementationInfo"/> object that
567            combines the <see cref="T:System.Reflection.MethodInfo"/>s for an interface method and the corresponding implementation.</param>
568            <returns>The <see cref="T:System.Reflection.MethodInfo"/> object to pass to the <see cref="M:Microsoft.Practices.Unity.InterceptionExtension.IInterceptingProxy.SetPipeline(System.Reflection.MethodBase,Microsoft.Practices.Unity.InterceptionExtension.HandlerPipeline)"/> method.</returns>
569        </member>
570        <member name="T:Microsoft.Practices.Unity.InterceptionExtension.PipelineManager">
571            <summary>
572            A collection of <see cref="T:Microsoft.Practices.Unity.InterceptionExtension.HandlerPipeline"/> objects, indexed
573            by <see cref="T:System.Reflection.MethodBase"/>. Returns an empty pipeline if a
574            MethodBase is requested that isn't in the dictionary.
575            </summary>
576        </member>
577        <member name="M:Microsoft.Practices.Unity.InterceptionExtension.PipelineManager.GetPipeline(System.Int32)">
578            <summary>
579            Retrieve the pipeline assocated with the requested <paramref name="methodToken"/>.
580            </summary>
581            <param name="methodToken">Metadata token for the method for which the pipeline is being requested.</param>
582            <returns>The handler pipeline for the given method. If no pipeline has
583            been set, returns a new empty pipeline.</returns>
584        </member>
585        <member name="M:Microsoft.Practices.Unity.InterceptionExtension.PipelineManager.SetPipeline(System.Int32,Microsoft.Practices.Unity.InterceptionExtension.HandlerPipeline)">
586            <summary>
587            Set a new pipeline for a method.
588            </summary>
589            <param name="methodToken">Metadata token for the method to apply the pipeline to.</param>
590            <param name="pipeline">The new pipeline.</param>
591        </member>
592        <member name="T:Microsoft.Practices.Unity.InterceptionExtension.ApplyNoPoliciesAttribute">
593            <summary>
594            Attribute used to indicate that no interception should be applied to
595            the attribute target.
596            </summary>
597        </member>
598        <member name="T:Microsoft.Practices.Unity.InterceptionExtension.AttributeDrivenPolicy">
599            <summary>
600            A <see cref="T:Microsoft.Practices.Unity.InterceptionExtension.InjectionPolicy"/> class that reads and constructs handlers
601            based on <see cref="T:Microsoft.Practices.Unity.InterceptionExtension.HandlerAttribute"/> on the target.
602            </summary>
603        </member>
604        <member name="T:Microsoft.Practices.Unity.InterceptionExtension.InjectionPolicy">
605            <summary>
606            Base class for Policies that specifies which handlers apply to which methods of an object.
607            </summary>
608            <remarks>
609            <para>This base class always enforces the 
610            <see cref="T:Microsoft.Practices.Unity.InterceptionExtension.ApplyNoPoliciesMatchingRule"/> before
611            passing the checks onto derived classes. This way, derived classes do not need to
612            worry about implementing this check.</para>
613            <para>It also means that derived classes cannot override this rule. This is considered a feature.</para></remarks>
614        </member>
615        <member name="M:Microsoft.Practices.Unity.InterceptionExtension.InjectionPolicy.#ctor">
616            <summary>
617            Creates a new empty Policy.
618            </summary>
619        </member>
620        <member name="M:Microsoft.Practices.Unity.InterceptionExtension.InjectionPolicy.#ctor(System.String)">
621            <summary>
622            Creates a new empty policy with the given name.
623            </summary>
624            <param name="name">Name of the policy.</param>
625        </member>
626        <member name="M:Microsoft.Practices.Unity.InterceptionExtension.InjectionPolicy.Matches(Microsoft.Practices.Unity.InterceptionExtension.MethodImplementationInfo)">
627            <summary>
628            Checks if the rules in this policy match the given member info.
629            </summary>
630            <param name="member">MemberInfo to check against.</param>
631            <returns>true if ruleset matches, false if it does not.</returns>
632        </member>
633        <member name="M:Microsoft.Practices.Unity.InterceptionExtension.InjectionPolicy.GetHandlersFor(Microsoft.Practices.Unity.InterceptionExtension.MethodImplementationInfo,Microsoft.Practices.Unity.IUnityContainer)">
634            <summary>
635            Returns ordered collection of handlers in order that apply to the given member.
636            </summary>
637            <param name="member">Member that may or may not be assigned handlers by this policy.</param>
638            <param name="container">The <see cref="T:Microsoft.Practices.Unity.IUnityContainer"/> to use when creating handlers,
639            if necessary.</param>
640            <returns>Collection of handlers (possibly empty) that apply to this member.</returns>
641        </member>
642        <member name="M:Microsoft.Practices.Unity.InterceptionExtension.InjectionPolicy.GetMethodSet(System.Reflection.MethodBase)">
643            <summary>
644            Given a method on an object, return the set of MethodBases for that method,
645            plus any inteface methods that the member implements.
646            </summary>
647            <param name="member">Member to get Method Set for.</param>
648            <returns>The set of methods</returns>
649        </member>
650        <member name="M:Microsoft.Practices.Unity.InterceptionExtension.InjectionPolicy.DoesMatch(Microsoft.Practices.Unity.InterceptionExtension.MethodImplementationInfo)">
651            <summary>
652            Derived classes implement this method to calculate if the policy
653            will provide any handler to the specified member.
654            </summary>
655            <param name="member">Member to check.</param>
656            <returns>true if policy applies to this member, false if not.</returns>
657        </member>
658        <member name="M:Microsoft.Practices.Unity.InterceptionExtension.InjectionPolicy.DoGetHandlersFor(Microsoft.Practices.Unity.InterceptionExtension.MethodImplementationInfo,Microsoft.Practices.Unity.IUnityContainer)">
659            <summary>
660            Derived classes implement this method to supply the list of handlers for
661            this specific member.
662            </summary>
663            <param name="member">Member to get handlers for.</param>
664            <param name="container">The <see cref="T:Microsoft.Practices.Unity.IUnityContainer"/> to use when creating handlers,
665            if necessary.</param>
666            <returns>Enumerable collection of handlers for this method.</returns>
667        </member>
668        <member name="P:Microsoft.Practices.Unity.InterceptionExtension.InjectionPolicy.Name">
669            <summary>
670            Gets the name of this policy.
671            </summary>
672            <value>The name of the policy.</value>
673        </member>
674        <member name="M:Microsoft.Practices.Unity.InterceptionExtension.AttributeDrivenPolicy.#ctor">
675            <summary>
676            Constructs a new instance of the <see cref="T:Microsoft.Practices.Unity.InterceptionExtension.AttributeDrivenPolicy"/>.
677            </summary>
678        </member>
679        <member name="M:Microsoft.Practices.Unity.InterceptionExtension.AttributeDrivenPolicy.DoesMatch(Microsoft.Practices.Unity.InterceptionExtension.MethodImplementationInfo)">
680            <summary>
681            Derived classes implement this method to calculate if the policy
682            will provide any handler to the specified member.
683            </summary>
684            <param name="member">Member to check.</param>
685            <returns>true if policy applies to this member, false if not.</returns>
686        </member>
687        <member name="M:Microsoft.Practices.Unity.InterceptionExtension.AttributeDrivenPolicy.DoGetHandlersFor(Microsoft.Practices.Unity.InterceptionExtension.MethodImplementationInfo,Microsoft.Practices.Unity.IUnityContainer)">
688            <summary>
689            Derived classes implement this method to supply the list of handlers for
690            this specific member.
691            </summary>
692            <param name="member">Member to get handlers for.</param>
693            <param name="container">The <see cref="T:Microsoft.Practices.Unity.IUnityContainer"/> to use when creating handlers,
694            if necessary.</param>
695            <returns>Enumerable collection of handlers for this method.</returns>
696        </member>
697        <member name="T:Microsoft.Practices.Unity.InterceptionExtension.HandlerAttribute">
698            <summary>
699            Base class for handler attributes used in the attribute-driven
700            interception policy.
701            </summary>
702        </member>
703        <member name="M:Microsoft.Practices.Unity.InterceptionExtension.HandlerAttribute.CreateHandler(Microsoft.Practices.Unity.IUnityContainer)">
704            <summary>
705            Derived classes implement this method. When called, it
706            creates a new call handler as specified in the attribute
707            configuration.
708            </summary>
709            <param name="container">The <see cref="T:Microsoft.Practices.Unity.IUnityContainer"/> to use when creating handlers,
710            if necessary.</param>
711            <returns>A new call handler object.</returns>
712        </member>
713        <member name="P:Microsoft.Practices.Unity.InterceptionExtension.HandlerAttribute.Order">
714            <summary>
715            Gets or sets the order in which the handler will be executed.
716            </summary>
717        </member>
718        <member name="T:Microsoft.Practices.Unity.InterceptionExtension.HandlerPipeline">
719            <summary>
720            The HandlerPipeline class encapsulates a list of <see cref="T:Microsoft.Practices.Unity.InterceptionExtension.ICallHandler"/>s
721            and manages calling them in the proper order with the right inputs.
722            </summary>
723        </member>
724        <member name="M:Microsoft.Practices.Unity.InterceptionExtension.HandlerPipeline.#ctor">
725            <summary>
726            Creates a new <see cref="T:Microsoft.Practices.Unity.InterceptionExtension.HandlerPipeline"/> with an empty pipeline.
727            </summary>
728        </member>
729        <member name="M:Microsoft.Practices.Unity.InterceptionExtension.HandlerPipeline.#ctor(System.Collections.Generic.IEnumerable{Microsoft.Practices.Unity.InterceptionExtension.ICallHandler})">
730            <summary>
731            Creates a new <see cref="T:Microsoft.Practices.Unity.InterceptionExtension.HandlerPipeline"/> with the given collection
732            of <see cref="T:Microsoft.Practices.Unity.InterceptionExtension.ICallHandler"/>s.
733            </summary>
734            <param name="handlers">Collection of handlers to add to the pipeline.</param>
735        </member>
736        <member name="M:Microsoft.Practices.Unity.InterceptionExtension.HandlerPipeline.Invoke(Microsoft.Practices.Unity.InterceptionExtension.IMethodInvocation,Microsoft.Practices.Unity.InterceptionExtension.InvokeHandlerDelegate)">
737            <summary>
738            Execute the pipeline with the given input.
739            </summary>
740            <param name="input">Input to the method call.</param>
741            <param name="target">The ultimate target of the call.</param>
742            <returns>Return value from the pipeline.</returns>
743        </member>
744        <member name="P:Microsoft.Practices.Unity.InterceptionExtension.HandlerPipeline.Count">
745            <summary>
746            Get the number of handlers in this pipeline.
747            </summary>
748        </member>
749        <member name="T:Microsoft.Practices.Unity.InterceptionExtension.ICallHandler">
750            <summary>
751            Handlers implement this interface and are called for each
752            invocation of the pipelines that they're included in.
753            </summary>
754        </member>
755        <member name="M:Microsoft.Practices.Unity.InterceptionExtension.ICallHandler.Invoke(Microsoft.Practices.Unity.InterceptionExtension.IMethodInvocation,Microsoft.Practices.Unity.InterceptionExtension.GetNextHandlerDelegate)">
756            <summary>
757            Implement this method to execute your handler processing.
758            </summary>
759            <param name="input">Inputs to the current call to the target.</param>
760            <param name="getNext">Delegate to execute to get the next delegate in the handler
761            chain.</param>
762            <returns>Return value from the target.</returns>
763        </member>
764        <member name="P:Microsoft.Practices.Unity.InterceptionExtension.ICallHandler.Order">
765            <summary>
766            Order in which the handler will be executed
767            </summary>
768        </member>
769        <member name="T:Microsoft.Practices.Unity.InterceptionExtension.InvokeHandlerDelegate">
770            <summary>
771            This delegate type is the type that points to the next
772            method to execute in the current pipeline.
773            </summary>
774            <param name="input">Inputs to the current method call.</param>
775            <param name="getNext">Delegate to get the next handler in the chain.</param>
776            <returns>Return from the next method in the chain.</returns>
777        </member>
778        <member name="T:Microsoft.Practices.Unity.InterceptionExtension.GetNextHandlerDelegate">
779            <summary>
780            This delegate type is passed to…

Large files files are truncated, but you can click here to view the full file