do you know what that way would be?

On Jul 20, 12:54 pm, Krzysztof Koźmic <[email protected]>
wrote:
> Correct, that was added recently. I think there was some way of
> specifying hook in v2.1.1 though
>
> On 20/07/2010 12:52 PM,PBwrote:
>
>
>
> > Hi
>
> > Thanks for reply. I am using v2.1.1 and there is no implementation of
> > Hook
> > Proxy.Hook(h  =>   h.Service<ProxyNothingHook>()
>
> > Regards
>
> > On Jul 13, 9:58 pm, Krzysztof Koźmic<[email protected]>
> > wrote:
>
> >> You don't register PGO, but you can configure all relevant aspects of
> >> the proxy mechanism.
> >> In trunk version of Windsor you can do:
>
> >> var  interceptor  =  new  ResultModifierInterceptor(5);
> >> container.Register(Component.For<ResultModifierInterceptor>().Instance(inte­­rceptor),
> >>                          Component.For<ProxyNothingHook>(),
> >>                          Component.For<ICalcService>()
> >>                          .ImplementedBy<CalculatorService>()
> >>                          .Interceptors<ResultModifierInterceptor>()
> >>                          .Proxy.Hook(h  =>    
> >> h.Service<ProxyNothingHook>()));
>
> >> var  calc  =  container.Resolve<ICalcService>();
> >> Assert.AreEqual(4,calc.Sum(2,2));
>
> >> In version v2.1.1 something similar although you can provide hook only
> >> as an instance IIRC.
> >> Version 2.5 beta1 does not have it which is my omission. Beta2 and final
> >> version will work like the sample above
>
> >> Krzysztof
>
> >> On 13/07/2010 9:53 PM,PBwrote:
>
> >>> I came across this article of your on Selecting which methods to
> >>> intercept which shows an implementation of ProxyGenerationOptions with
> >>> ProxyGenerationHook. I am using windsor container and register types
> >>> as follow
>
> >>> IWindsorContainer container = new WindsorContainer();
> >>>    container.Register(
> >>>                   Component.For<IFoo>().ImplementedBy<Foo>(),
> >>>                   Component.For<ILogger>().ImplementedBy<Logger>(),
> >>>                   Component.For<LogInterceptor>().LifeStyle.Transient);
>
> >>> could you please indicate how can i register ProxyGenerationOptions
> >>> using windsor container. Thanks
>
> >>>http://kozmic.pl/archive/2009/01/17/castle-dynamic-proxy-tutorial-par...
>
> >>> On Jul 10, 11:15 pm, Krzysztof Koźmic<[email protected]>
> >>> wrote:
>
> >>>> using either IProxyGenerationHook, or IIntreceptorSelector
>
> >>>> Component.For<IFoo>().ImplementedBy<Foo>().Interceptors<SomeInterceptor,
> >>>> SomeOtherInterceptor>()
>
> >>>> 2010/7/10PB<[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,PBwrote:
>
> >>>>>>> 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 
> >>>>> athttp://groups.google.com/group/castle-project-users?hl=en.-Hidequoted 
> >>>>> text -
>
> >>>> - Show quoted text -- Hide quoted text -
>
> >> - Show quoted text -- 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.

Reply via email to