class MQTT::V5::Unsubscribe

Defined in:

mqtt/v5/subscribe.cr

Constant Summary

AFTER_DESERIALIZE = [] of Nil
ALLOWED_PROPERTIES = [PropertyId::UserProperty]

MQTT-3.10.2.1, only user properties are allowed here

BEFORE_SERIALIZE = [] of Nil
ENDIAN = ["big"]
KLASS_NAME = [MQTT::V5::Unsubscribe]
PARTS = [{type: "basic", name: message_id, cls: UInt16, onlyif: nil, verify: nil, value: nil, endian: nil}, {type: "basic", name: properties, cls: MQTT::V5::Properties, onlyif: nil, verify: nil, value: nil}, {type: "variable_array", name: topics, cls: MQTT::V5::UnsubTopic, container: Array(MQTT::V5::UnsubTopic), onlyif: nil, verify: nil, read_next: -> do consumed < packet_length end, value: nil}] of Nil
REMAINING = [] of Nil

Class Method Summary

Instance Method Summary

Instance methods inherited from class MQTT::Header

__format__ : IO::ByteFormat __format__, duplicate : Bool duplicate, duplicate=(duplicate : UInt8)
duplicate=(value : Bool)
duplicate=
, fixed_header_size : Int32 fixed_header_size, id : MQTT::RequestType id, id=(id : UInt8)
id=(value : MQTT::RequestType)
id=
, packet_length : UInt32 packet_length, packet_length=(size : UInt32) : UInt32 packet_length=, qos : MQTT::QoS qos, qos=(qos : UInt8)
qos=(value : MQTT::QoS)
qos=
, qos? qos?, retain : Bool retain, retain=(retain : UInt8)
retain=(value : Bool)
retain=
, variable_length1 : UInt8 variable_length1, variable_length1=(value : UInt8) : UInt8 variable_length1=, variable_length2 : UInt8 variable_length2, variable_length2=(value : UInt8) : UInt8 variable_length2=, variable_length3 : UInt8 variable_length3, variable_length3=(value : UInt8) : UInt8 variable_length3=, variable_length4 : UInt8 variable_length4, variable_length4=(value : UInt8) : UInt8 variable_length4=

Class methods inherited from class MQTT::Header

bit_fields bit_fields

Class Method Detail

def self.bit_fields #

[View source]

Instance Method Detail

def __format__ : IO::ByteFormat #

A group or bit_field captures the endianness at its declaration point, so declaring endian after one would silently leave it system-endian. Fail loudly.


[View source]
def add_user_property(key : String, value : String) : Nil #

[View source]
def calculate_length : UInt32 #

[View source]
def message_id : UInt16 #

def message_id=(message_id : UInt16) #

def properties : Properties #

def properties=(properties : Properties) #

def topics #

[View source]
def topics=(topics : Array(MQTT::V5::UnsubTopic)) #

def topics=(array : Enumerable(String)) #

[View source]
def validate! : self #

[View source]