class Cql::Protocol::PreparedResultResponse

Attributes

id[R]
metadata[R]
result_metadata[R]

Public Class Methods

decode(protocol_version, buffer, length, trace_id=nil) click to toggle source
# File lib/cql/protocol/responses/prepared_result_response.rb, line 13
def self.decode(protocol_version, buffer, length, trace_id=nil)
  id = buffer.read_short_bytes
  metadata, _ = RowsResultResponse.read_metadata(protocol_version, buffer)
  result_metadata = nil
  if protocol_version > 1
    result_metadata, _, _ = RowsResultResponse.read_metadata(protocol_version, buffer)
  end
  new(id, metadata, result_metadata, trace_id)
end
new(id, metadata, result_metadata, trace_id) click to toggle source
Calls superclass method
# File lib/cql/protocol/responses/prepared_result_response.rb, line 8
def initialize(id, metadata, result_metadata, trace_id)
  super(trace_id)
  @id, @metadata, @result_metadata = id, metadata, result_metadata
end

Public Instance Methods

==(other)
Alias for: eql?
eql?(other) click to toggle source
# File lib/cql/protocol/responses/prepared_result_response.rb, line 23
def eql?(other)
  self.id == other.id && self.metadata == other.metadata && self.trace_id == other.trace_id
end
Also aliased as: ==
hash() click to toggle source
# File lib/cql/protocol/responses/prepared_result_response.rb, line 28
def hash
  @h ||= begin
    h = 0
    h = ((h & 0x01ffffff) * 31) ^ @id.hash
    h = ((h & 0x01ffffff) * 31) ^ @metadata.hash
    h = ((h & 0x01ffffff) * 31) ^ @trace_id.hash
    h
  end
end
to_s() click to toggle source
# File lib/cql/protocol/responses/prepared_result_response.rb, line 38
def to_s
  hex_id = @id.each_byte.map { |x| x.to_s(16).rjust(2, '0') }.join('')
  %(RESULT PREPARED #{hex_id} #@metadata)
end