using either IProxyGenerationHook, or IIntreceptorSelector Component.For<IFoo>().ImplementedBy<Foo>().Interceptors<SomeInterceptor, SomeOtherInterceptor>()
2010/7/10 PB <[email protected]>: > thanks. then how can i prevent a method from being intercepted for > interfaces? > > regards. > > On Jul 9, 8:05 pm, Krzysztof Koźmic <[email protected]> > wrote: >> You're mixing stuff up here. Attributes and being virtual are unrelated. >> >> Class components need to have methods virtual to be interceptable. >> Interfaces are virtual by definition. >> >> You don't need attributes at all - just assign interceptor to the >> component when registering it. >> >> Krzysztof >> >> On 9/07/2010 12:30 PM, PB wrote: >> >> >> >> > I use Windsor container for DI in my application. I want to implement >> > interception and confused wether I'll have to change the existing >> > implementation to use Dynamic Proxy to create objects so that they can >> > be intercepted or is there a way to integrate with existing Windsor >> > container. >> >> > Also how can I implement attribute based method interception? I don't >> > want classes to be attributed with >> > [Interceptor(typeof(LogInterceptor))] and then create virtual methods. >> >> > Ninject allows you to derive your attribute class from >> > InterceptAttribute class and decorate methods for interception. >> >> > [AttributeUsage(AttributeTargets.Property|AttributeTargets.Method, >> > AllowMultiple = false, Inherited = true)] >> > public class LogAttribute : InterceptAttribute >> > { >> > public override IInterceptor CreateInterceptor(IProxyRequest >> > request) >> > { >> > return request.Context.Kernel.Get<LogInterceptor>(); >> > } >> > } >> >> > Is it achievable with castle? >> >> > Thanks- Hide quoted text - >> >> - Show quoted text - > > -- > You received this message because you are subscribed to the Google Groups > "Castle Project Users" group. > To post to this group, send email to [email protected]. > To unsubscribe from this group, send email to > [email protected]. > For more options, visit this group at > http://groups.google.com/group/castle-project-users?hl=en. > > -- You received this message because you are subscribed to the Google Groups "Castle Project Users" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/castle-project-users?hl=en.
