コード例 #1
0
        public async Task <AmqpIotSession> OpenSessionAsync(IDeviceIdentity deviceIdentity, CancellationToken cancellationToken)
        {
            if (Logging.IsEnabled)
            {
                Logging.Enter(this, deviceIdentity, nameof(OpenSessionAsync));
            }

            AmqpIotConnection amqpIotConnection = await EnsureConnectionAsync(cancellationToken).ConfigureAwait(false);

            AmqpIotSession amqpIotSession = await amqpIotConnection.OpenSessionAsync(cancellationToken).ConfigureAwait(false);

            if (Logging.IsEnabled)
            {
                Logging.Associate(amqpIotConnection, amqpIotSession, nameof(OpenSessionAsync));
                Logging.Exit(this, deviceIdentity, nameof(OpenSessionAsync));
            }

            return(amqpIotSession);
        }
コード例 #2
0
        public async Task <AmqpIotSession> OpenSessionAsync(DeviceIdentity deviceIdentity, TimeSpan timeout)
        {
            if (Logging.IsEnabled)
            {
                Logging.Enter(this, deviceIdentity, timeout, nameof(OpenSessionAsync));
            }

            AmqpIotConnection amqpIotConnection = await EnsureConnectionAsync(timeout).ConfigureAwait(false);

            AmqpIotSession amqpIotSession = await amqpIotConnection.OpenSessionAsync(timeout).ConfigureAwait(false);

            if (Logging.IsEnabled)
            {
                Logging.Associate(amqpIotConnection, amqpIotSession, nameof(OpenSessionAsync));
            }

            if (Logging.IsEnabled)
            {
                Logging.Exit(this, deviceIdentity, timeout, nameof(OpenSessionAsync));
            }

            return(amqpIotSession);
        }