John, we would really welcome your help :)
The SL support is getting more and more important for more and more people so putting some work in that would certainly be a good idea 2009/9/1 John Simons <[email protected]>: > > It would be good to support IParameterInspector via Windsor. > So that we don't have to write a IOperationBehavior just to add the > IParameterInspector. > Eg. > public class AuditBehavior : IOperationBehavior > { > private readonly ILogger logger; > > public AuditBehavior(ILogger logger) > { > this.logger = logger; > } > > > /// <inheritdoc/> > public void Validate(OperationDescription operationDescription) > { > > } > > > /// <inheritdoc/> > public void ApplyDispatchBehavior(OperationDescription > operationDescription, DispatchOperation dispatchOperation) > { > dispatchOperation.ParameterInspectors.Add(new > AuditingInspector > (logger)); > } > > > /// <inheritdoc/> > public void ApplyClientBehavior(OperationDescription > operationDescription, ClientOperation clientOperation) > { > > } > > > /// <inheritdoc/> > public void AddBindingParameters(OperationDescription > operationDescription, BindingParameterCollection bindingParameters) > { > > } > } > > The class above only exists because there is no other way to register > IParameterInspectors. > > > On Sep 2, 1:34 am, Craig Neuwirt <[email protected]> wrote: >> Since you seem to be a user of the facility, are there any other things you >> would like changed or added? >> >> On Mon, Aug 31, 2009 at 6:56 PM, John Simons >> <[email protected]>wrote: >> >> > One more thing Craig, >> >> > On the client side the following test is failing : (Paste in >> > WcfClientFixture) >> >> > [Test, ExpectedException(typeof(EndpointNotFoundException))] >> > public void ThrowsEndPointNotFoundException() >> > { >> > Func<IWindsorContainer> createLocalContainer = () => >> > new WindsorContainer() >> > .AddFacility<WcfFacility>(f => f.CloseTimeout = >> > TimeSpan.Zero) >> > .Register( >> > Component.For<Operations>() >> > .DependsOn(new { number = 42 }) >> > .ActAs(new DefaultServiceModel().AddEndpoints( >> > WcfEndpoint.ForContract<IOperations>() >> > .BoundTo(new NetTcpBinding { >> > PortSharingEnabled = true }) >> > .At("net.tcp://localhost/Operations1")) >> > ) >> > ); >> >> > windsorContainer.Register( >> > Component.For<IOperationsEx>() >> > .Named("operations") >> > .ActAs(new DefaultClientModel >> > { >> > Endpoint = WcfEndpoint >> > .BoundTo(new NetTcpBinding { PortSharingEnabled >> > = true }) >> > .At("net.tcp://localhost/Operations2") >> > .AddExtensions(new ChannelReconnectPolicy()) >> > }) >> > ); >> >> > IOperationsEx client; >> >> > using (createLocalContainer()) >> > { >> > client = >> > windsorContainer.Resolve<IOperationsEx>("operations"); >> > client.Backup(new Dictionary<string, object>()); >> > } >> > } >> >> > The exception thrown is ComponentActivatorException but I think you should >> > instead throw the inner exception, so that the test passes. >> > What do you think ? >> >> > This way makes it more natural and simple for the consumer. >> >> > Cheers >> > John >> >> > ------------------------------ >> > *From:* Craig Neuwirt <[email protected]> >> > *To:* [email protected] >> > *Sent:* Tuesday, 1 September, 2009 9:25:49 AM >> > *Subject:* Re: WcfFacility policies >> >> > sure >> >> > On Mon, Aug 31, 2009 at 6:18 PM, John Simons >> > <[email protected]>wrote: >> >> >> Craig, >> >> >> That's what I'm saying, I think you should use this as the default >> >> implementation of IChannelActionPolicy and if the user wants they can >> >> register another implementation with a lower ExecutionOrder so that >> >> gets executed before. >> >> What do you think? >> >> >> On Aug 31, 11:52 pm, Craig Neuwirt <[email protected]> wrote: >> >> > There are many ways to handle reconnection, so I didn't want to pick one >> >> by >> >> > default. >> >> > I could probably use it as a default if none are specified. >> >> >> > On Sat, Aug 29, 2009 at 9:39 PM, John Simons < >> >> [email protected]>wrote: >> >> >> > > I've noticed that the ChannelReconnectPolicy is not automatically >> >> > > added to the facility. >> >> > > Shouldn't this be an opt out instead ? >> >> >> > > I would think that 9/10 you want the facility to handle the >> >> > > CommunicationException automatically and recreate the channel. >> >> >> > > Cheers >> >> > > John >> >> > ------------------------------ >> > Find local businesses and services in your area with Yahoo!7 Local. Get >> > started<http://au.rd.yahoo.com/search/local/mailtagline/*http://local.yahoo.c...> >> > . > > > --~--~---------~--~----~------------~-------~--~----~ 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 -~----------~----~----~----~------~----~------~--~---
