struct LavinMQ::MQTT::Exchange::BindingKey

Overview

In MQTT only topic/routing key is used in routing, but arguments is used to store QoS level for each subscription. To make @bingings treat the same subscription with different QoS as the same subscription this "custom" BindingKey is used which only includes the routing key in the hash.

Defined in:

lavinmq/mqtt/exchange.cr

Constructors

Instance Method Summary

Constructor Detail

def self.new(routing_key : String, arguments : AMQP::Table | Nil = nil) #

[View source]

Instance Method Detail

def hash #
Description copied from class Object

Generates an UInt64 hash value for this object.

This method must have the property that a == b implies a.hash == b.hash.

The hash value is used along with == by the Hash class to determine if two objects reference the same hash key.

Subclasses must not override this method. Instead, they must define hash(hasher), though usually the macro def_hash can be used to generate this method.


[View source]
def inner : LavinMQ::BindingKey #

[View source]