상속: IIoHandler
예제 #1
0
 public void OnNegotiationFail(Exception exception)
 {
     AmqpTrace.Provider.AmqpLogError(this, "OnNegotiationFail", exception.Message);
     this.negotiator = null;
     this.innerTransport.SafeClose(exception);
     this.CompleteOpen(false, exception);
 }
예제 #2
0
 public void OnNegotiationSucceed(IPrincipal principal)
 {
     AmqpTrace.Provider.AmqpLogOperationInformational(this, TraceOperation.Execute, "OnNegotiationSucceed");
     this.negotiator = null;
     this.Principal  = principal;
     this.CompleteOpen(false, null);
 }
예제 #3
0
        public void Start(SaslNegotiator saslNegotiator, SaslInit init, bool isClient)
        {
            this.saslNegotiator = saslNegotiator;

            try
            {
                this.OnStart(init, isClient);
            }
            catch (Exception exception) when(!Fx.IsFatal(exception))
            {
                this.saslNegotiator.CompleteNegotiation(SaslCode.Sys, exception);
            }
        }
예제 #4
0
        public void Start(SaslNegotiator saslNegotiator, SaslInit init, bool isClient)
        {
            this.saslNegotiator = saslNegotiator;

            try
            {
                this.OnStart(init, isClient);
            }
            catch (Exception exception)
            {
                if (Fx.IsFatal(exception))
                {
                    throw;
                }

                this.saslNegotiator.CompleteNegotiation(SaslCode.Sys, exception);
            }
        }
예제 #5
0
 public SaslTransport(TransportBase transport, SaslTransportProvider provider, bool isInitiator)
     : base("sasl", transport.Identifier)
 {
     this.innerTransport = transport;
     this.negotiator     = new SaslNegotiator(this, provider, isInitiator);
 }