Test.Microsoft.Azure.Amqp.AmqpUtils.CreateTransport C# (CSharp) Méthode

CreateTransport() public static méthode

public static CreateTransport ( string host, int port, string sslHost, bool doSslUpgrade, SaslHandler saslHandler ) : TransportBase
host string
port int
sslHost string
doSslUpgrade bool
saslHandler SaslHandler
Résultat TransportBase
        public static TransportBase CreateTransport(string host, int port, string sslHost, bool doSslUpgrade, SaslHandler saslHandler)
        {
            AmqpSettings settings = GetAmqpSettings(true, sslHost, doSslUpgrade, saslHandler);

            TransportSettings transportSettings = GetTcpSettings(host, port, false);
            if (!doSslUpgrade && sslHost != null)
            {
                TlsTransportSettings tlsSettings = new TlsTransportSettings(transportSettings);
                tlsSettings.TargetHost = sslHost;
                tlsSettings.CertificateValidationCallback = (s, c, h, e) => { return true; };
                transportSettings = tlsSettings;
            }

            ManualResetEvent complete = new ManualResetEvent(false);
            AmqpTransportInitiator initiator = new AmqpTransportInitiator(settings, transportSettings);
            TransportAsyncCallbackArgs args = new TransportAsyncCallbackArgs();
            args.CompletedCallback = (a) => { complete.Set(); };
            initiator.ConnectAsync(TimeSpan.FromSeconds(120), args);

            complete.WaitOne();
            complete.Dispose();

            if (args.Exception != null)
            {
                throw args.Exception;
            }

            return args.Transport;
        }