void ProcessChannel(IMqttChannel <byte[]> binaryChannel) { _tracer.Verbose(ServerProperties.Server_NewSocketAccepted); IMqttChannel <IPacket> packetChannel = _channelFactory.Create(binaryChannel); ServerPacketListener packetListener = new ServerPacketListener(packetChannel, _connectionProvider, _flowProvider, _configuration); packetListener.Listen(); packetListener .PacketStream .Subscribe(_ => { }, ex => { _tracer.Error(ex, ServerProperties.Server_PacketsObservableError); packetChannel.Dispose(); packetListener.Dispose(); }, () => { _tracer.Warn(ServerProperties.Server_PacketsObservableCompleted); packetChannel.Dispose(); packetListener.Dispose(); } ); _channels.Add(packetChannel); }
protected override void Dispose(bool disposing) { if (disposing) { _channel.Dispose(); _syncRoot.Dispose(); } base.Dispose(disposing); }
protected override void Dispose(bool disposing) { if (disposing) { _channel?.Dispose(); _writerSemaphore?.Dispose(); } base.Dispose(disposing); }
public void Dispose() { if (_disposed) { return; } _tracer.Info(ClientProperties.Mqtt_Disposing(GetType().FullName)); _subscription.Dispose(); _receiver.OnCompleted(); _innerChannel.Dispose(); _disposed = true; }
void Close(DisconnectedReason reason, string message = null) { tracer.Info(Properties.Resources.Client_Disposing, Id, reason); receiver?.OnCompleted(); packetsSubscription?.Dispose(); packetListener?.Dispose(); packetChannel?.Dispose(); (clientSender as IDisposable)?.Dispose(); IsConnected = false; Id = null; Disconnected(this, new MqttEndpointDisconnected(reason, message)); }
protected virtual void Dispose(bool disposing) { if (disposed) { return; } if (disposing) { tracer.Info(Properties.Resources.Mqtt_Disposing, GetType().FullName); subscription.Dispose(); receiver.OnCompleted(); innerChannel.Dispose(); disposed = true; } }
public void Dispose() { _isDisposed = true; _channel?.Dispose(); }
public void Dispose() { _isDisposed = true; _semaphore?.Dispose(); _channel?.Dispose(); }