class
   LavinMQ::AMQP::Queue
  
  - LavinMQ::AMQP::Queue
 - LavinMQ::Queue
 - Reference
 - Object
 
Included Modules
Direct Known Subclasses
- LavinMQ::AMQP::DelayedExchangeQueue
 - LavinMQ::AMQP::DurableQueue
 - LavinMQ::AMQP::PriorityQueue
 - LavinMQ::MQTT::Session
 
Defined in:
lavinmq/amqp/queue/queue.crConstant Summary
- 
        Log = 
LavinMQ::Log.for("queue") 
Constructors
Class Method Summary
Instance Method Summary
- #ack(sp : SegmentPosition) : Nil
 - 
        #ack_count : UInt64
        
          
Creates @[x]_count and @[x]_rate and @[y]_log
 - #add_consumer(consumer : Client::Channel::Consumer)
 - #apply_policy(policy : Policy | Nil, operator_policy : OperatorPolicy | Nil)
 - #arguments : AMQ::Protocol::Table
 - #auto_delete? : Bool
 - #basic_get(no_ack, force = false, & : Envelope -> Nil) : Bool
 - #basic_get_unacked : Deque(LavinMQ::UnackedMessage)
 - #bindings
 - #close : Bool
 - #closed? : Bool
 - 
        #confirm_count : UInt64
        
          
Creates @[x]_count and @[x]_rate and @[y]_log
 - 
        #consume_get(consumer, & : Envelope -> Nil) : Bool
        
          
If nil is returned it means that the delivery limit is reached
 - #consumer_count
 - #consumer_timeout : UInt64 | Nil
 - #consumers : Array(LavinMQ::Client::Channel::Consumer)
 - 
        #current_stats_details
        
          
Like stats_details but without log
 - 
        #dedup_count : UInt64
        
          
Creates @[x]_count and @[x]_rate and @[y]_log
 - #delete : Bool
 - 
        #deliver_count : UInt64
        
          
Creates @[x]_count and @[x]_rate and @[y]_log
 - 
        #deliver_get_count : UInt64
        
          
Creates @[x]_count and @[x]_rate and @[y]_log
 - #details_tuple
 - #durable?
 - #empty? : Bool
 - #empty_change : ::Channel(Bool)
 - #exclusive? : Bool
 - 
        #get_count : UInt64
        
          
Creates @[x]_count and @[x]_rate and @[y]_log
 - 
        #get_no_ack_count : UInt64
        
          
Creates @[x]_count and @[x]_rate and @[y]_log
 - #has_exclusive_consumer? : Bool
 - #has_priority_consumers? : Bool
 - #immediate_delivery?
 - #in_use?
 - 
        #inspect(io : IO)
        
          
Appends a String representation of this object which includes its class name, its object address and the values of all instance variables.
 - #match?(durable, exclusive, auto_delete, arguments)
 - #match?(frame)
 - #message_count
 - 
        #message_count_log : Deque(UInt32)
        
          
Creates @[x]_count and @[x]_rate and @[y]_log
 - #name : String
 - #notify_observers(event : LavinMQ::QueueEvent, data : Object | Nil = nil)
 - #operator_policy : OperatorPolicy | Nil
 - #pause!
 - #paused? : Bool
 - #paused_change : Channel(Bool)
 - #policy : Policy | Nil
 - #publish(msg : Message) : Bool
 - 
        #publish_count : UInt64
        
          
Creates @[x]_count and @[x]_rate and @[y]_log
 - #purge(max_count : Int = UInt32::MAX) : UInt32
 - 
        #read(sp : SegmentPosition) : Envelope
        
          
Used for when channel recovers without requeue eg.
 - #redeclare
 - 
        #redeliver_count : UInt64
        
          
Creates @[x]_count and @[x]_rate and @[y]_log
 - #register_observer(observer : LavinMQ::Observer(LavinMQ::QueueEvent))
 - #reject(sp : SegmentPosition, requeue : Bool)
 - 
        #reject_count : UInt64
        
          
Creates @[x]_count and @[x]_rate and @[y]_log
 - #resume!
 - 
        #return_unroutable_count : UInt64
        
          
Creates @[x]_count and @[x]_rate and @[y]_log
 - #rm_consumer(consumer : Client::Channel::Consumer)
 - #single_active_consumer : Client::Channel::Consumer | Nil
 - #single_active_consumer_change : Channel(LavinMQ::Client::Channel::Consumer)
 - #state : LavinMQ::QueueState
 - 
        #stats_details
        
          
Creates @[x]_count and @[x]_rate and @[y]_log
 - #to_json(json : JSON::Builder, consumer_limit : Int32 = -1)
 - #unacked_bytesize : UInt64
 - #unacked_count : UInt32
 - 
        #unacked_count_log : Deque(UInt32)
        
          
Creates @[x]_count and @[x]_rate and @[y]_log
 - #unacked_messages
 - #unregister_observer(observer : LavinMQ::Observer(LavinMQ::QueueEvent))
 - 
        #update_rates : Nil
        
          
Creates @[x]_count and @[x]_rate and @[y]_log
 - #vhost : LavinMQ::VHost
 
Instance methods inherited from module LavinMQ::SortableJSON
  
  
    
      details_tuple
    details_tuple, 
    
  
    
      search_match?(value : String)search_match?(value : Regex) search_match?, to_json(json : JSON::Builder) to_json
Macros inherited from module LavinMQ::Stats
  
  
    
      rate_stats(stats_keys, log_keys = [] of ::String)
    rate_stats
    
  
    
      
      
      
      
    
      
  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
    
  
      
      
      
    
      
      
      
      
    
      
  Instance methods inherited from module LavinMQ::SortableJSON
  
  
    
      details_tuple
    details_tuple, 
    
  
    
      search_match?(value : String)search_match?(value : Regex) search_match?, to_json(json : JSON::Builder) to_json
Constructor Detail
Class Method Detail
Instance Method Detail
If nil is returned it means that the delivery limit is reached
Appends a String representation of this object which includes its class name, its object address and the values of all instance variables.
class Person
  def initialize(@name : String, @age : Int32)
  end
end
Person.new("John", 32).inspect # => #<Person:0x10fd31f20 @name="John", @age=32>
        Used for when channel recovers without requeue eg. redelivers messages it already has unacked