Add clean session flag to MQTT Node configuration.

This commit is contained in:
Igor Kulikov 2018-06-01 22:29:27 +03:00
parent 9f82e59b2d
commit 6e78f33730
3 changed files with 6 additions and 3 deletions

View File

@ -111,6 +111,7 @@ public class TbMqttNode implements TbNode {
if (!StringUtils.isEmpty(this.config.getClientId())) { if (!StringUtils.isEmpty(this.config.getClientId())) {
config.setClientId(this.config.getClientId()); config.setClientId(this.config.getClientId());
} }
config.setCleanSession(this.config.isCleanSession());
this.config.getCredentials().configure(config); this.config.getCredentials().configure(config);
MqttClient client = MqttClient.create(config); MqttClient client = MqttClient.create(config);
client.setEventLoop(this.eventLoopGroup); client.setEventLoop(this.eventLoopGroup);

View File

@ -30,6 +30,7 @@ public class TbMqttNodeConfiguration implements NodeConfiguration<TbMqttNodeConf
private int connectTimeoutSec; private int connectTimeoutSec;
private String clientId; private String clientId;
private boolean cleanSession;
private boolean ssl; private boolean ssl;
private MqttClientCredentials credentials; private MqttClientCredentials credentials;
@ -40,6 +41,7 @@ public class TbMqttNodeConfiguration implements NodeConfiguration<TbMqttNodeConf
configuration.setHost("localhost"); configuration.setHost("localhost");
configuration.setPort(1883); configuration.setPort(1883);
configuration.setConnectTimeoutSec(10); configuration.setConnectTimeoutSec(10);
configuration.setCleanSession(true);
configuration.setSsl(false); configuration.setSsl(false);
configuration.setCredentials(new AnonymousCredentials()); configuration.setCredentials(new AnonymousCredentials());
return configuration; return configuration;