Package io.vertx.reactivex.mqtt.messages

## Class MqttPublishMessage

- java.lang.Object
- - io.vertx.reactivex.mqtt.messages.MqttPublishMessage

- All Implemented Interfaces:
    `io.vertx.lang.rx.RxDelegate`, `MqttMessage`

      public class MqttPublishMessage
      extends Object
      implements io.vertx.lang.rx.RxDelegate, MqttMessage

  Represents an MQTT PUBLISH message

  NOTE: This class has been automatically generated from the `original` non RX-ified interface using Vert.x codegen.

- - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `static io.vertx.lang.rx.TypeArg<MqttPublishMessage>` | `__TYPE_ARG` |

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `MqttPublishMessage​(MqttPublishMessage delegate)` |
    `MqttPublishMessage​(Object delegate)` |

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `ack()` | Send the PUBACK/PUBCOMP to the broker.
    `static MqttPublishMessage` | `create​(int messageId, MqttQoS qosLevel, boolean isDup, boolean isRetain, String topicName, Buffer payload, MqttProperties properties)` | Create a concrete instance of a Vert.x publish message
    `boolean` | `equals​(Object o)` |
    `MqttPublishMessage` | `getDelegate()` |
    `int` | `hashCode()` |
    `boolean` | `isDup()` |
    `boolean` | `isRetain()` |
    `int` | `messageId()` |
    `static MqttPublishMessage` | `newInstance​(MqttPublishMessage arg)` |
    `Buffer` | `payload()` |
    `MqttProperties` | `properties()` |
    `MqttQoS` | `qosLevel()` |
    `String` | `topicName()` |
    `String` | `toString()` |

    - ### Methods inherited from class java.lang.Object

      `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

- - ### Field Detail

    - #### __TYPE_ARG

          public static final io.vertx.lang.rx.TypeArg<MqttPublishMessage> __TYPE_ARG

  - ### Constructor Detail

    - #### MqttPublishMessage

          public MqttPublishMessage​(MqttPublishMessage delegate)

    - #### MqttPublishMessage

          public MqttPublishMessage​(Object delegate)

  - ### Method Detail

    - #### toString

          public String toString()

      Overrides:
        `toString` in class `Object`

    - #### equals

          public boolean equals​(Object o)

      Overrides:
        `equals` in class `Object`

    - #### hashCode

          public int hashCode()

      Overrides:
        `hashCode` in class `Object`

    - #### getDelegate

          public MqttPublishMessage getDelegate()

      Specified by:
        `getDelegate` in interface `MqttMessage`
      Specified by:
        `getDelegate` in interface `io.vertx.lang.rx.RxDelegate`

    - #### messageId

          public int messageId()

      Specified by:
        `messageId` in interface `MqttMessage`
      Returns:
        Message identifier

    - #### qosLevel

          public MqttQoS qosLevel()

      Returns:
        Quality of service level

    - #### isDup

          public boolean isDup()

      Returns:
        If the message is a duplicate

    - #### isRetain

          public boolean isRetain()

      Returns:
        If the message needs to be retained

    - #### topicName

          public String topicName()

      Returns:
        Topic on which the message was published

    - #### payload

          public Buffer payload()

      Returns:
        Payload message

    - #### ack

          public void ack()

      Send the PUBACK/PUBCOMP to the broker. Use this method only if autoAck option is set to false.

    - #### create

          public static MqttPublishMessage create​(int messageId,
                                                  MqttQoS qosLevel,
                                                  boolean isDup,
                                                  boolean isRetain,
                                                  String topicName,
                                                  Buffer payload,
                                                  MqttProperties properties)

      Create a concrete instance of a Vert.x publish message
      Parameters:
        `messageId` - message identifier
        `qosLevel` - quality of service level
        `isDup` - if the message is a duplicate
        `isRetain` - if the message needs to be retained
        `topicName` - topic on which the message was published
        `payload` - payload message
        `properties` - message properties
      Returns:
        Vert.x publish message

    - #### properties

          public MqttProperties properties()

      Returns:
        MQTT properties

    - #### newInstance

          public static MqttPublishMessage newInstance​(MqttPublishMessage arg)