예제 #1
0
 internal MsmqInputSessionChannelListener(MsmqBindingElementBase bindingElement, BindingContext context, MsmqReceiveParameters receiveParameters) : base(bindingElement, context, receiveParameters, TransportDefaults.GetDefaultMessageEncoderFactory())
 {
     base.SetSecurityTokenAuthenticator(MsmqUri.NetMsmqAddressTranslator.Scheme, context);
     this.receiver = new System.ServiceModel.Channels.MsmqReceiveHelper(base.ReceiveParameters, this.Uri, new MsmqInputMessagePool((base.ReceiveParameters as MsmqTransportReceiveParameters).MaxPoolSize), null, this);
     if (base.ReceiveParameters.ReceiveContextSettings.Enabled)
     {
         this.receiveContextManager = new MsmqReceiveContextLockManager(base.ReceiveParameters.ReceiveContextSettings, this.receiver.Queue);
     }
 }
 public MsmqInputChannelBase(MsmqInputChannelListenerBase listener, IMsmqMessagePool messagePool) : base(listener)
 {
     this.receiveParameters = listener.ReceiveParameters;
     this.receiver = new System.ServiceModel.Channels.MsmqReceiveHelper(listener.ReceiveParameters, listener.Uri, messagePool, this, listener);
     this.localAddress = new EndpointAddress(listener.Uri, new AddressHeader[0]);
     this.listener = listener;
     if (this.receiveParameters.ReceiveContextSettings.Enabled)
     {
         this.receiveContextManager = new MsmqReceiveContextLockManager(this.receiveParameters.ReceiveContextSettings, this.receiver.Queue);
     }
 }