Class: AMQ::Protocol::Basic::Deliver

Inherits:
Method
  • Object
show all
Defined in:
lib/amq/protocol/client.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Method

encode_body, index, inherited, instantiate, method_id, methods, name, split_headers

Constructor Details

#initialize(consumer_tag, delivery_tag, redelivered, exchange, routing_key) ⇒ Deliver

Returns a new instance of Deliver.



1818
1819
1820
1821
1822
1823
1824
# File 'lib/amq/protocol/client.rb', line 1818

def initialize(consumer_tag, delivery_tag, redelivered, exchange, routing_key)
  @consumer_tag = consumer_tag
  @delivery_tag = delivery_tag
  @redelivered = redelivered
  @exchange = exchange
  @routing_key = routing_key
end

Instance Attribute Details

#consumer_tagObject (readonly)

Returns the value of attribute consumer_tag.



1817
1818
1819
# File 'lib/amq/protocol/client.rb', line 1817

def consumer_tag
  @consumer_tag
end

#delivery_tagObject (readonly)

Returns the value of attribute delivery_tag.



1817
1818
1819
# File 'lib/amq/protocol/client.rb', line 1817

def delivery_tag
  @delivery_tag
end

#exchangeObject (readonly)

Returns the value of attribute exchange.



1817
1818
1819
# File 'lib/amq/protocol/client.rb', line 1817

def exchange
  @exchange
end

#redeliveredObject (readonly)

Returns the value of attribute redelivered.



1817
1818
1819
# File 'lib/amq/protocol/client.rb', line 1817

def redelivered
  @redelivered
end

#routing_keyObject (readonly)

Returns the value of attribute routing_key.



1817
1818
1819
# File 'lib/amq/protocol/client.rb', line 1817

def routing_key
  @routing_key
end

Class Method Details

.decode(data) ⇒ Object

Returns:



1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
1813
1814
1815
# File 'lib/amq/protocol/client.rb', line 1795

def self.decode(data)
  offset = 0
  length = data[offset, 1].unpack(PACK_CHAR).first
  offset += 1
  consumer_tag = data[offset, length]
  offset += length
  delivery_tag = AMQ::Pack.unpack_uint64_big_endian(data[offset, 8]).first
  offset += 8
  bit_buffer = data[offset, 1].unpack(PACK_CHAR).first
  offset += 1
  redelivered = (bit_buffer & (1 << 0)) != 0
  length = data[offset, 1].unpack(PACK_CHAR).first
  offset += 1
  exchange = data[offset, length]
  offset += length
  length = data[offset, 1].unpack(PACK_CHAR).first
  offset += 1
  routing_key = data[offset, length]
  offset += length
  self.new(consumer_tag, delivery_tag, redelivered, exchange, routing_key)
end

.has_content?Boolean

Returns:

  • (Boolean)


1826
1827
1828
# File 'lib/amq/protocol/client.rb', line 1826

def self.has_content?
  true
end