本文整理汇总了Java中io.netty.handler.codec.mqtt.MqttMessageType类的典型用法代码示例。如果您正苦于以下问题:Java MqttMessageType类的具体用法?Java MqttMessageType怎么用?Java MqttMessageType使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
MqttMessageType类属于io.netty.handler.codec.mqtt包,在下文中一共展示了MqttMessageType类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。
示例1: connect
import io.netty.handler.codec.mqtt.MqttMessageType; //导入依赖的package包/类
public static MqttConnectMessage connect(ConnectOptions options) {
MqttFixedHeader fixedHeader = new MqttFixedHeader(MqttMessageType.CONNECT, false, MqttQoS.AT_MOST_ONCE, false,
10);
MqttConnectVariableHeader variableHeader = new MqttConnectVariableHeader(options.version().protocolName(),
options.version().protocolLevel(), options.userName() != null, options.password() != null,
options.will() == null ? false : options.will().isRetain(),
options.will() == null ? 0 : options.will().qos().value(), options.will() != null,
options.cleanSession(), options.keepAliveTimeSeconds());
MqttConnectPayload payload = new MqttConnectPayload(Strings.nullToEmpty(options.clientId()),
options.will() == null ? "" : options.will().topicName(),
options.will() == null ? "" : new String(options.will().message(), CharsetUtil.UTF_8),
Strings.nullToEmpty(options.userName()), Strings.nullToEmpty(options.password()));
return new MqttConnectMessage(fixedHeader, variableHeader, payload);
}
开发者ID:anyflow,项目名称:lannister,代码行数:17,代码来源:MqttMessageFactory.java
示例2: executeNormalChannelRead0
import io.netty.handler.codec.mqtt.MqttMessageType; //导入依赖的package包/类
private MqttConnAckMessage executeNormalChannelRead0(String clientId, boolean cleanSession, ChannelId channelId)
throws Exception {
MqttFixedHeader fixedHeader = new MqttFixedHeader(MqttMessageType.CONNECT, false, MqttQoS.AT_MOST_ONCE, false,
10);
MqttConnectVariableHeader variableHeader = new MqttConnectVariableHeader("MQTT", 4, true, true, true, 0, true,
cleanSession, 60);
MqttConnectPayload payload = new MqttConnectPayload(clientId, "willtopic", "willmessage", "username",
"password");
MqttConnectMessage msg = new MqttConnectMessage(fixedHeader, variableHeader, payload);
ChannelId cid = channelId == null ? TestUtil.newChannelId(clientId, false) : channelId;
EmbeddedChannel channel = new EmbeddedChannel(cid, new ConnectReceiver());
channel.writeInbound(msg);
return channel.readOutbound();
}
开发者ID:anyflow,项目名称:lannister,代码行数:20,代码来源:ConnectReceiverTest.java
示例3: channelRead
import io.netty.handler.codec.mqtt.MqttMessageType; //导入依赖的package包/类
@Override
public void channelRead(ChannelHandlerContext ctx, Object message) {
MqttMessage msg = (MqttMessage) message;
MqttMessageType messageType = msg.fixedHeader().messageType();
try {
switch (messageType) {
case PUBLISH:
LOG.info("Received a message of type {}", messageType);
handlePublish((MqttPublishMessage) msg);
return;
default:
LOG.info("Received a message of type {}", messageType);
}
} catch (Exception ex) {
LOG.error("Bad error in processing the message", ex);
}
}
开发者ID:andsel,项目名称:moquette,代码行数:19,代码来源:PublishReceiverHandler.java
示例4: channelRead
import io.netty.handler.codec.mqtt.MqttMessageType; //导入依赖的package包/类
@Override
public void channelRead(ChannelHandlerContext ctx, Object message) {
MqttMessage msg = (MqttMessage) message;
MqttMessageType type = msg.fixedHeader().messageType();
try {
switch (type) {
case PUBLISH:
LOG.info("Received a message of type {}", type);
handlePublish((MqttPublishMessage) msg);
return;
default:
LOG.info("Received a message of type {}", type);
}
} catch (Exception ex) {
LOG.error("Bad error in processing the message", ex);
}
}
开发者ID:andsel,项目名称:moquette,代码行数:19,代码来源:NettyPublishReceiverHandler.java
示例5: sendPubAck
import io.netty.handler.codec.mqtt.MqttMessageType; //导入依赖的package包/类
private void sendPubAck(String clientId, int messageID) {
LOG.trace("sendPubAck invoked");
MqttFixedHeader fixedHeader = new MqttFixedHeader(MqttMessageType.PUBACK, false, AT_MOST_ONCE, false, 0);
MqttPubAckMessage pubAckMessage = new MqttPubAckMessage(fixedHeader, from(messageID));
try {
if (connectionDescriptors == null) {
throw new RuntimeException("Internal bad error, found connectionDescriptors to null while it should " +
"be initialized, somewhere it's overwritten!!");
}
LOG.trace("connected clientIDs are {}", connectionDescriptors.getConnectedClientIds());
if (!connectionDescriptors.isConnected(clientId)) {
throw new RuntimeException(String.format("Can't find a ConnectionDescriptor for client %s in cache %s",
clientId, connectionDescriptors));
}
connectionDescriptors.sendMessage(pubAckMessage, messageID, clientId);
} catch (Throwable t) {
LOG.error(null, t);
}
}
开发者ID:andsel,项目名称:moquette,代码行数:21,代码来源:Qos1PublishHandler.java
示例6: channelRead
import io.netty.handler.codec.mqtt.MqttMessageType; //导入依赖的package包/类
@Override
public void channelRead(ChannelHandlerContext ctx, Object message) {
MqttMessage msg = (MqttMessage) message;
MqttMessageType messageType = msg.fixedHeader().messageType();
switch (messageType) {
case PUBLISH:
this.publishesMetrics.mark();
break;
case SUBSCRIBE:
this.subscribeMetrics.mark();
break;
case CONNECT:
this.connectedClientsMetrics.inc();
break;
case DISCONNECT:
this.connectedClientsMetrics.dec();
break;
default:
break;
}
ctx.fireChannelRead(message);
}
开发者ID:andsel,项目名称:moquette,代码行数:23,代码来源:DropWizardMetricsHandler.java
示例7: mapToInternal
import io.netty.handler.codec.mqtt.MqttMessageType; //导入依赖的package包/类
/**
* Convert Map to InternalMessage
*
* @param map Map
* @return InternalMessage
*/
public static InternalMessage mapToInternal(Map<String, String> map) {
if (map == null || map.isEmpty()) return null;
int type = Integer.parseInt(map.get("type"));
if (type == MqttMessageType.PUBLISH.value()) {
byte[] payload = null;
if (map.get("payload") != null) try {
payload = map.get("payload").getBytes("ISO-8859-1");
} catch (UnsupportedEncodingException ignore) {
}
return new InternalMessage<>(
MqttMessageType.PUBLISH,
BooleanUtils.toBoolean(map.getOrDefault("dup", "0"), "1", "0"),
MqttQoS.valueOf(Integer.parseInt(map.getOrDefault("qos", "0"))),
BooleanUtils.toBoolean(map.getOrDefault("retain", "0"), "1", "0"),
MqttVersion.valueOf(map.getOrDefault("version", MqttVersion.MQTT_3_1_1.toString())),
map.get("clientId"),
map.get("userName"),
null,
new Publish(
map.get("topicName"),
Integer.parseInt(map.getOrDefault("packetId", "0")),
payload
));
} else if (type == MqttMessageType.PUBREL.value()) {
return new InternalMessage<>(
MqttMessageType.PUBREL,
false,
MqttQoS.AT_LEAST_ONCE,
false,
MqttVersion.valueOf(map.getOrDefault("version", MqttVersion.MQTT_3_1_1.toString())),
map.get("clientId"),
map.get("userName"),
null,
new PacketId(Integer.parseInt(map.getOrDefault("packetId", "0"))));
} else {
throw new IllegalArgumentException("Invalid in-flight MQTT message type: " + MqttMessageType.valueOf(type));
}
}
开发者ID:12315jack,项目名称:j1st-mqtt,代码行数:46,代码来源:Converter.java
示例8: internalToMap
import io.netty.handler.codec.mqtt.MqttMessageType; //导入依赖的package包/类
/**
* Convert InternalMessage to Map
*
* @param msg InternalMessage
* @return Map
*/
public static Map<String, String> internalToMap(InternalMessage msg) {
Map<String, String> map = new HashMap<>();
if (msg == null) return map;
if (msg.getMessageType() == MqttMessageType.PUBLISH) {
Publish publish = (Publish) msg.getPayload();
map.put("type", String.valueOf(MqttMessageType.PUBLISH.value()));
map.put("retain", BooleanUtils.toString(msg.isRetain(), "1", "0"));
map.put("qos", String.valueOf(msg.getQos().value()));
map.put("dup", BooleanUtils.toString(msg.isDup(), "1", "0"));
map.put("version", msg.getVersion().toString());
if (!msg.isRetain()) map.put("clientId", msg.getClientId());
map.put("userName", msg.getUserName());
map.put("topicName", publish.getTopicName());
if (!msg.isRetain()) map.put("packetId", String.valueOf(publish.getPacketId()));
if (publish.getPayload() != null && publish.getPayload().length > 0) try {
map.put("payload", new String(publish.getPayload(), "ISO-8859-1"));
} catch (UnsupportedEncodingException ignore) {
}
return map;
} else if (msg.getMessageType() == MqttMessageType.PUBREL) {
PacketId packetId = (PacketId) msg.getPayload();
map.put("type", String.valueOf(MqttMessageType.PUBREL.value()));
map.put("version", msg.getVersion().toString());
map.put("clientId", msg.getClientId());
map.put("userName", msg.getUserName());
map.put("packetId", String.valueOf(packetId.getPacketId()));
return map;
} else {
throw new IllegalArgumentException("Invalid in-flight MQTT message type: " + msg.getMessageType());
}
}
开发者ID:12315jack,项目名称:j1st-mqtt,代码行数:39,代码来源:Converter.java
示例9: channelRead
import io.netty.handler.codec.mqtt.MqttMessageType; //导入依赖的package包/类
@Override
public void channelRead(ChannelHandlerContext ctx, Object msg) throws Exception {
if (msg instanceof MqttMessage) {
MqttMessage mqtt = (MqttMessage) msg;
if (StringUtils.isBlank(this.clientId) && mqtt.fixedHeader().messageType() == MqttMessageType.CONNECT) {
this.clientId = ((MqttConnectPayload) mqtt.payload()).clientId();
}
if (StringUtils.isNotBlank(this.clientId)) {
this.metrics.measurement(this.clientId, this.brokerId, MessageDirection.IN, mqtt.fixedHeader().messageType());
}
this.metrics.measurement(this.brokerId, MessageDirection.IN, mqtt.fixedHeader().messageType());
}
ctx.fireChannelRead(msg);
}
开发者ID:12315jack,项目名称:j1st-mqtt,代码行数:15,代码来源:MessageMetricsHandler.java
示例10: measurement
import io.netty.handler.codec.mqtt.MqttMessageType; //导入依赖的package包/类
@Override
public void measurement(String clientId, String brokerId, MessageDirection direction, MqttMessageType type) {
Point point = Point.measurement("mqtt_client_" + clientId)
.time(System.currentTimeMillis(), TimeUnit.MILLISECONDS)
.tag("broker", brokerId)
.tag("direction", direction.toString())
.tag("type", getMessageTypeName(type))
.field("count", 1L)
.build();
this.influxDB.write(this.dbName, "default", point);
}
开发者ID:12315jack,项目名称:j1st-mqtt,代码行数:12,代码来源:InfluxDBMetricsService.java
示例11: getMessageTypeName
import io.netty.handler.codec.mqtt.MqttMessageType; //导入依赖的package包/类
protected String getMessageTypeName(MqttMessageType type) {
switch (type) {
case CONNECT:
return "connect";
case CONNACK:
return "connack";
case PUBLISH:
return "publish";
case PUBACK:
return "puback";
case PUBREC:
return "pubrec";
case PUBREL:
return "pubrel";
case PUBCOMP:
return "pubcomp";
case SUBSCRIBE:
return "subscribe";
case SUBACK:
return "suback";
case UNSUBSCRIBE:
return "unsubscribe";
case UNSUBACK:
return "unsuback";
case PINGREQ:
return "pingreq";
case PINGRESP:
return "pingresp";
case DISCONNECT:
return "disconnect";
default:
return "unknown";
}
}
开发者ID:12315jack,项目名称:j1st-mqtt,代码行数:35,代码来源:InfluxDBMetricsService.java
示例12: find
import io.netty.handler.codec.mqtt.MqttMessageType; //导入依赖的package包/类
public static void find(){
Set<Class<?>> validatorClasses = find(Validator.class, VALIDATOR_PKG);
Iterator<Class<?>> iterator = validatorClasses.iterator();
while(iterator.hasNext()){
Class<?> cls = iterator.next();
Validator validator = cls.getAnnotation(Validator.class);
MqttMessageType type = validator.type();
switch (type){
case CONNECT:
buildConnectValidatorCache(cls);
break;
}
}
}
开发者ID:Dovakin-IO,项目名称:DovakinMQ,代码行数:15,代码来源:AnnotationFinder.java
示例13: doMessage
import io.netty.handler.codec.mqtt.MqttMessageType; //导入依赖的package包/类
public MqttMessage doMessage(Channel channel, MqttMessage msg) {
String channelId = channel.id().asLongText();
logger.debug("MQTT PINGREQ " + channelId);
// 更新最新连接时间
ApplicationContext.updateChannelConTime(channelId);
MqttFixedHeader fixedHeader = new MqttFixedHeader(MqttMessageType.PINGRESP, false, MqttQoS.AT_MOST_ONCE, false, 0);
MqttMessage message = new MqttMessage(fixedHeader);
return message;
}
开发者ID:airballcz,项目名称:iot-platform,代码行数:13,代码来源:PingReqHandler.java
示例14: onMsg
import io.netty.handler.codec.mqtt.MqttMessageType; //导入依赖的package包/类
@Override
public void onMsg(SessionCtrlMsg msg) throws SessionException {
if (msg instanceof SessionCloseMsg) {
pushToNetwork(
new MqttMessage(new MqttFixedHeader(MqttMessageType.DISCONNECT, false, MqttQoS.AT_MOST_ONCE, false, 0)));
channel.close();
}
}
开发者ID:osswangxining,项目名称:iotplatform,代码行数:9,代码来源:DeviceSessionCtx.java
示例15: createMqttPublishMsg
import io.netty.handler.codec.mqtt.MqttMessageType; //导入依赖的package包/类
private MqttPublishMessage createMqttPublishMsg(DeviceSessionCtx ctx, String topic, JsonElement json) {
MqttFixedHeader mqttFixedHeader = new MqttFixedHeader(MqttMessageType.PUBLISH, false, MqttQoS.AT_LEAST_ONCE, false,
0);
MqttPublishVariableHeader header = new MqttPublishVariableHeader(topic, ctx.nextMsgId());
ByteBuf payload = ALLOCATOR.buffer();
payload.writeBytes(GSON.toJson(json).getBytes(UTF8));
return new MqttPublishMessage(mqttFixedHeader, header, payload);
}
开发者ID:osswangxining,项目名称:iotplatform,代码行数:9,代码来源:JsonMqttAdaptor.java
示例16: connack
import io.netty.handler.codec.mqtt.MqttMessageType; //导入依赖的package包/类
public static MqttConnAckMessage connack(MqttConnectReturnCode returnCode, boolean sessionPresent) {
MqttFixedHeader fixedHeader = new MqttFixedHeader(MqttMessageType.CONNACK, false, MqttQoS.AT_MOST_ONCE, false,
2);
MqttConnAckVariableHeader variableHeader = new MqttConnAckVariableHeader(returnCode, sessionPresent);
return new MqttConnAckMessage(fixedHeader, variableHeader);
}
开发者ID:anyflow,项目名称:lannister,代码行数:8,代码来源:MqttMessageFactory.java
示例17: puback
import io.netty.handler.codec.mqtt.MqttMessageType; //导入依赖的package包/类
public static MqttPubAckMessage puback(int messageId) {
MqttFixedHeader fixedHeader = new MqttFixedHeader(MqttMessageType.PUBACK, false, MqttQoS.AT_MOST_ONCE, false,
2);
MqttMessageIdVariableHeader variableHeader = MqttMessageIdVariableHeader.from(messageId);
return new MqttPubAckMessage(fixedHeader, variableHeader);
}
开发者ID:anyflow,项目名称:lannister,代码行数:8,代码来源:MqttMessageFactory.java
示例18: pubrec
import io.netty.handler.codec.mqtt.MqttMessageType; //导入依赖的package包/类
public static MqttMessage pubrec(int messageId) {
MqttFixedHeader fixedHeader = new MqttFixedHeader(MqttMessageType.PUBREC, false, MqttQoS.AT_MOST_ONCE, false,
2);
MqttMessageIdVariableHeader variableHeader = MqttMessageIdVariableHeader.from(messageId);
return new MqttMessage(fixedHeader, variableHeader);
}
开发者ID:anyflow,项目名称:lannister,代码行数:8,代码来源:MqttMessageFactory.java
示例19: pubrel
import io.netty.handler.codec.mqtt.MqttMessageType; //导入依赖的package包/类
public static MqttMessage pubrel(int messageId) {
MqttFixedHeader fixedHeader = new MqttFixedHeader(MqttMessageType.PUBREL, false, MqttQoS.AT_LEAST_ONCE, false,
2);
MqttMessageIdVariableHeader variableHeader = MqttMessageIdVariableHeader.from(messageId);
return new MqttMessage(fixedHeader, variableHeader);
}
开发者ID:anyflow,项目名称:lannister,代码行数:8,代码来源:MqttMessageFactory.java
示例20: pubcomp
import io.netty.handler.codec.mqtt.MqttMessageType; //导入依赖的package包/类
public static MqttMessage pubcomp(int messageId) {
MqttFixedHeader fixedHeader = new MqttFixedHeader(MqttMessageType.PUBCOMP, false, MqttQoS.AT_MOST_ONCE, false,
2);
MqttMessageIdVariableHeader variableHeader = MqttMessageIdVariableHeader.from(messageId);
return new MqttMessage(fixedHeader, variableHeader);
}
开发者ID:anyflow,项目名称:lannister,代码行数:8,代码来源:MqttMessageFactory.java
注:本文中的io.netty.handler.codec.mqtt.MqttMessageType类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论