List of usage examples for io.netty.handler.codec.mqtt MqttSubAckMessage variableHeader
@Override
public MqttMessageIdVariableHeader variableHeader()
From source file:org.thingsboard.mqtt.MqttChannelHandler.java
License:Apache License
private void handleSubAck(MqttSubAckMessage message) { MqttPendingSubscription pendingSubscription = this.client.getPendingSubscriptions() .remove(message.variableHeader().messageId()); if (pendingSubscription == null) { return;//from w w w. java2 s. c om } pendingSubscription.onSubackReceived(); for (MqttPendingSubscription.MqttPendingHandler handler : pendingSubscription.getHandlers()) { MqttSubscription subscription = new MqttSubscription(pendingSubscription.getTopic(), handler.getHandler(), handler.isOnce()); this.client.getSubscriptions().put(pendingSubscription.getTopic(), subscription); this.client.getHandlerToSubscribtion().put(handler.getHandler(), subscription); } this.client.getPendingSubscribeTopics().remove(pendingSubscription.getTopic()); this.client.getServerSubscriptions().add(pendingSubscription.getTopic()); if (!pendingSubscription.getFuture().isDone()) { pendingSubscription.getFuture().setSuccess(null); } }