コード例 #1
0
ファイル: FramingChannel.cs プロジェクト: suneths/CoreWCF
 protected FramingDuplexSessionChannel(ConnectionOrientedTransportChannelListener channelListener,
                                       EndpointAddress localAddress, Uri localVia, bool exposeConnectionProperty)
     : this(channelListener, channelListener, localAddress, localVia,
            EndpointAddress.AnonymousAddress, channelListener.MessageVersion.Addressing.AnonymousUri(), exposeConnectionProperty)
 {
     Session = FramingConnectionDuplexSession.CreateSession(this, channelListener.Upgrade);
 }
コード例 #2
0
        internal bool IsCompatible(ConnectionOrientedTransportChannelListener channelListener)
        {
            if (channelListener.InheritBaseAddressSettings)
            {
                return(true);
            }

            return(
                (ChannelInitializationTimeout == channelListener.ChannelInitializationTimeout) &&
                (ConnectionBufferSize == channelListener.ConnectionBufferSize) &&
                (MaxPendingConnections == channelListener.MaxPendingConnections) &&
                (MaxOutputDelay == channelListener.MaxOutputDelay) &&
                (MaxPendingAccepts == channelListener.MaxPendingAccepts) &&
                (idleTimeout == channelListener.IdleTimeout) &&
                (maxPooledConnections == channelListener.MaxPooledConnections)
                );
        }
コード例 #3
0
            public ServerFramingDuplexSessionChannel(ConnectionOrientedTransportChannelListener channelListener, ServerSessionPreambleConnectionReader preambleReader,
                                                     EndpointAddress localAddress, bool exposeConnectionProperty, ConnectionDemuxer connectionDemuxer)
                : base(channelListener, localAddress, preambleReader.Via, exposeConnectionProperty)
            {
                this.channelListener   = channelListener;
                this.connectionDemuxer = connectionDemuxer;
                Connection             = preambleReader.Connection;
                decoder          = preambleReader.Decoder;
                connectionBuffer = preambleReader.connectionBuffer;
                offset           = preambleReader.BufferOffset;
                size             = preambleReader.BufferSize;
                rawConnection    = preambleReader.RawConnection;
                StreamUpgradeProvider upgrade = channelListener.Upgrade;

                if (upgrade != null)
                {
                    channelBindingProvider = upgrade.GetProperty <IStreamUpgradeChannelBindingProvider>();
                    upgradeAcceptor        = upgrade.CreateUpgradeAcceptor();
                }
            }
コード例 #4
0
 public ConnectionOrientedTransportReplyChannelAcceptor(ConnectionOrientedTransportChannelListener listener)
     : base(listener)
 {
     upgrade = listener.GetUpgrade();
 }
コード例 #5
0
 public IDuplexSessionChannel CreateDuplexSessionChannel(ConnectionOrientedTransportChannelListener channelListener, EndpointAddress localAddress, bool exposeConnectionProperty, ConnectionDemuxer connectionDemuxer)
 {
     return(new ServerFramingDuplexSessionChannel(channelListener, this, localAddress, exposeConnectionProperty, connectionDemuxer));
 }