abstract class LavinMQ::Exchange
- LavinMQ::Exchange
- Reference
- Object
Included Modules
Direct Known Subclasses
- LavinMQ::ConsistentHashExchange
- LavinMQ::DefaultExchange
- LavinMQ::DirectExchange
- LavinMQ::FanoutExchange
- LavinMQ::HeadersExchange
- LavinMQ::TopicExchange
Defined in:
lavinmq/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 | Nil, operator_policy : OperatorPolicy | Nil)
- #arguments : AMQ::Protocol::Table
- #auto_delete? : Bool
- #bind(destination : Queue, routing_key : String, headers : AMQP::Table | Nil)
- #bind(destination : Exchange, routing_key : String, headers : AMQP::Table | Nil)
- #binding_details(key, destination)
- #bindings_details
- #clear_policy
-
#current_stats_details
Like stats_details but without log
- #delayed? : Bool
- #details_tuple
- #do_exchange_matches(routing_key : String, headers : AMQP::Table | Nil, & : Exchange -> _)
- #do_queue_matches(routing_key : String, headers : AMQP::Table | Nil, & : Queue -> _)
- #durable? : Bool
- #exchange_bindings : Hash({String, AMQ::Protocol::Table?}, Set(LavinMQ::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
- #operator_policy : OperatorPolicy | Nil
- #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, AMQ::Protocol::Table?}, Set(LavinMQ::Queue))
- #queue_matches(routing_key : String, headers = nil, &blk : Queue -> _)
- #stats_details
- #to_json(json : JSON::Builder)
- #type : String
- #unbind(destination : Queue, routing_key : String, headers : AMQP::Table | Nil)
- #unbind(destination : Exchange, routing_key : String, headers : AMQP::Table | Nil)
- #unroutable_count : UInt64
- #unroutable_count=(unroutable_count : UInt64)
- #update_rates : Nil
- #vhost : LavinMQ::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 LavinMQ::SortableJSON
details_tuple
details_tuple,
to_json(json : JSON::Builder)
to_json
Instance methods inherited from module LavinMQ::PolicyTarget
apply_policy(policy : Policy | Nil, operator_policy : OperatorPolicy | Nil)
apply_policy,
clear_policy
clear_policy,
operator_policy : OperatorPolicy | Nil
operator_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 : AMQ::Protocol::Table = AMQP::Table.new)
#
Instance Method Detail
abstract
def do_exchange_matches(routing_key : String, headers : AMQP::Table | Nil, & : Exchange -> _)
#