abstract class AvalancheMQ::Exchange
- AvalancheMQ::Exchange
- Reference
- Object
Included Modules
Direct Known Subclasses
- AvalancheMQ::ConsistentHashExchange
- AvalancheMQ::DefaultExchange
- AvalancheMQ::DirectExchange
- AvalancheMQ::FanoutExchange
- AvalancheMQ::HeadersExchange
- AvalancheMQ::TopicExchange
Defined in:
avalanchemq/exchange/exchange.crConstant Summary
-
MAX_NAME_LENGTH =
256
-
REPUBLISH_HEADERS =
{"x-head", "x-tail", "x-from"}
Constructors
Instance Method Summary
- #alternate_exchange : String?
- #apply_policy(policy : Policy)
- #arguments : Hash(String, AMQ::Protocol::Field)
- #auto_delete : Bool
- #bind(destination : Queue, routing_key : String, headers : Hash(String, AMQP::Field) | Nil)
- #bind(destination : Exchange, routing_key : String, headers : Hash(String, AMQP::Field) | Nil)
- #binding_details(key, destination)
- #bindings_details
- #clear_policy
- #delayed? : Bool
- #details_tuple
- #do_exchange_matches(routing_key : String, headers : AMQP::Table | Nil, &blk : Exchange -> _)
- #do_queue_matches(routing_key : String, headers : AMQP::Table | Nil, &blk : Queue -> _)
- #durable : Bool
- #exchange_bindings : Hash({String, Hash(String, AMQ::Protocol::Field)?}, Set(AvalancheMQ::Exchange))
- #exchange_matches(routing_key : String, headers = nil, &blk : Exchange -> _)
- #handle_arguments
- #in_use?
- #internal : Bool
- #match?(type, durable, auto_delete, internal, arguments)
- #match?(frame : AMQP::Frame)
- #name : String
- #persistent?
- #policy : Policy | Nil
- #publish_in_count : UInt64
- #publish_in_count=(publish_in_count : UInt64)
- #publish_out_count : UInt64
- #publish_out_count=(publish_out_count : UInt64)
- #queue_bindings : Hash({String, Hash(String, AMQ::Protocol::Field)?}, Set(AvalancheMQ::Queue))
- #queue_matches(routing_key : String, headers = nil, &blk : Queue -> _)
- #referenced_sps(referenced_sps) : Nil
- #stats_details
- #type : String
- #unbind(destination : Queue, routing_key : String, headers : Hash(String, AMQP::Field) | Nil)
- #unbind(destination : Exchange, routing_key : String, headers : Hash(String, AMQP::Field) | Nil)
- #unroutable_count : UInt64
- #unroutable_count=(unroutable_count : UInt64)
- #update_rates
- #vhost : AvalancheMQ::VHost
Instance methods inherited from module Observable
notify_observers(event : Symbol, data : Object | Nil = nil)
notify_observers,
register_observer(observer : Observer)
register_observer,
unregister_observer(observer : Observer)
unregister_observer
Instance methods inherited from module AvalancheMQ::SortableJSON
details_tuple
details_tuple,
to_json(json : JSON::Builder)
to_json
Instance methods inherited from module AvalancheMQ::PolicyTarget
apply_policy(p : Policy)
apply_policy,
clear_policy
clear_policy,
policy : Policy | Nil
policy
Constructor Detail
def self.new(vhost : VHost, name : String, durable : Bool = false, auto_delete : Bool = false, internal : Bool = false, arguments : Hash(String, AMQ::Protocol::Field) = Hash(String, AMQP::Field).new)
#
Instance Method Detail
abstract
def bind(destination : Queue, routing_key : String, headers : Hash(String, AMQP::Field) | Nil)
#
abstract
def bind(destination : Exchange, routing_key : String, headers : Hash(String, AMQP::Field) | Nil)
#
abstract
def do_exchange_matches(routing_key : String, headers : AMQP::Table | Nil, &blk : Exchange -> _)
#
abstract
def do_queue_matches(routing_key : String, headers : AMQP::Table | Nil, &blk : Queue -> _)
#
def exchange_bindings : Hash({String, Hash(String, AMQ::Protocol::Field)?}, Set(AvalancheMQ::Exchange))
#
abstract
def unbind(destination : Queue, routing_key : String, headers : Hash(String, AMQP::Field) | Nil)
#