Class: AMQ::Protocol::Basic::Cancel

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, nowait) ⇒ Cancel

Returns a new instance of Cancel.



1659
1660
1661
1662
# File 'lib/amq/protocol/client.rb', line 1659

def initialize(consumer_tag, nowait)
  @consumer_tag = consumer_tag
  @nowait = nowait
end

Instance Attribute Details

#consumer_tagObject (readonly)

Returns the value of attribute consumer_tag.



1658
1659
1660
# File 'lib/amq/protocol/client.rb', line 1658

def consumer_tag
  @consumer_tag
end

#nowaitObject (readonly)

Returns the value of attribute nowait.



1658
1659
1660
# File 'lib/amq/protocol/client.rb', line 1658

def nowait
  @nowait
end

Class Method Details

.decode(data) ⇒ Object

Returns:



1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
# File 'lib/amq/protocol/client.rb', line 1646

def self.decode(data)
  offset = offset = 0 # self-assigning offset to eliminate "assigned but unused variable" warning even if offset is not used in this method
  length = data[offset, 1].unpack(PACK_CHAR).first
  offset += 1
  consumer_tag = data[offset, length]
  offset += length
  bit_buffer = data[offset, 1].unpack(PACK_CHAR).first
  offset += 1
  nowait = (bit_buffer & (1 << 0)) != 0
  self.new(consumer_tag, nowait)
end

.encode(channel, consumer_tag, nowait) ⇒ Object

‘consumer_tag = nil’, ‘nowait = false’

Returns:



1670
1671
1672
1673
1674
1675
1676
1677
1678
# File 'lib/amq/protocol/client.rb', line 1670

def self.encode(channel, consumer_tag, nowait)
  buffer = @packed_indexes.dup
  buffer << consumer_tag.to_s.bytesize.chr
  buffer << consumer_tag.to_s
  bit_buffer = 0
  bit_buffer = bit_buffer | (1 << 0) if nowait
  buffer << [bit_buffer].pack(PACK_CHAR)
  MethodFrame.new(buffer, channel)
end

.has_content?Boolean

Returns:

  • (Boolean)


1664
1665
1666
# File 'lib/amq/protocol/client.rb', line 1664

def self.has_content?
  false
end