Example usage for io.netty.handler.codec.mqtt MqttSubAckMessage payload

List of usage examples for io.netty.handler.codec.mqtt MqttSubAckMessage payload

Introduction

In this page you can find the example usage for io.netty.handler.codec.mqtt MqttSubAckMessage payload.

Prototype

@Override
    public MqttSubAckPayload payload() 

Source Link

Usage

From source file:io.crate.mqtt.netty.MqttMessageLogger.java

private void logMQTTMessage(ChannelHandlerContext ctx, Object message, String direction) {
    if (logger.isTraceEnabled() && message instanceof MqttMessage) {
        MqttMessage msg = (MqttMessage) message;
        String clientID = NettyUtils.clientID(ctx.channel());
        MqttMessageType messageType = msg.fixedHeader().messageType();
        switch (messageType) {
        case CONNECT:
        case CONNACK:
        case PINGREQ:
        case PINGRESP:
        case DISCONNECT:
            logger.trace("{} {} <{}>", direction, messageType, clientID);
            break;
        case SUBSCRIBE:
            MqttSubscribeMessage subscribe = (MqttSubscribeMessage) msg;
            logger.trace("{} SUBSCRIBE <{}> to topics {}", direction, clientID,
                    subscribe.payload().topicSubscriptions());
            break;
        case UNSUBSCRIBE:
            MqttUnsubscribeMessage unsubscribe = (MqttUnsubscribeMessage) msg;
            logger.trace("{} UNSUBSCRIBE <{}> to topics <{}>", direction, clientID,
                    unsubscribe.payload().topics());
            break;
        case PUBLISH:
            MqttPublishMessage publish = (MqttPublishMessage) msg;
            logger.trace("{} PUBLISH <{}> to topics <{}>", direction, clientID,
                    publish.variableHeader().topicName());
            break;
        case PUBREC:
        case PUBCOMP:
        case PUBREL:
        case PUBACK:
        case UNSUBACK:
            logger.trace("{} {} <{}> packetID <{}>", direction, messageType, clientID, messageId(msg));
            break;
        case SUBACK:
            MqttSubAckMessage suback = (MqttSubAckMessage) msg;
            List<Integer> grantedQoSLevels = suback.payload().grantedQoSLevels();
            logger.trace("{} SUBACK <{}> packetID <{}>, grantedQoses {}", direction, clientID, messageId(msg),
                    grantedQoSLevels);//from w w w .  j  av a 2s  .  c o m
            break;
        default:
            logger.trace("{} {} <{}> Unknown message type received.", direction, messageType, clientID);
        }
    }
}

From source file:io.moquette.spi.impl.AbstractProtocolProcessorCommonUtils.java

License:Open Source License

protected void subscribe(EmbeddedChannel channel, String topic, MqttQoS desiredQos) {
    MqttSubscribeMessage subscribe = MqttMessageBuilders.subscribe().addSubscription(desiredQos, topic)
            .messageId(1).build();//w w  w .  j a v a2s. c om
    this.m_processor.processSubscribe(channel, subscribe);
    MqttSubAckMessage subAck = channel.readOutbound();
    assertEquals(desiredQos.value(), (int) subAck.payload().grantedQoSLevels().get(0));

    final String clientId = NettyUtils.clientID(channel);
    Subscription expectedSubscription = new Subscription(clientId, new Topic(topic), desiredQos);
    verifySubscriptionExists(m_sessionStore, expectedSubscription);
}