Class: Cql::Protocol::SchemaChangeResultResponse

Inherits:
ResultResponse show all
Defined in:
lib/cql/protocol/responses/schema_change_result_response.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from ResultResponse

#void?

Methods included from Decoding

#read_byte!, #read_bytes!, #read_consistency!, #read_decimal!, #read_double!, #read_float!, #read_inet!, #read_int!, #read_long!, #read_long_string!, #read_option!, #read_short!, #read_short_bytes!, #read_string!, #read_string_list!, #read_string_map!, #read_string_multimap!, #read_uuid!, #read_varint!

Constructor Details

#initialize(*args) ⇒ SchemaChangeResultResponse

Returns a new instance of SchemaChangeResultResponse.



8
9
10
# File 'lib/cql/protocol/responses/schema_change_result_response.rb', line 8

def initialize(*args)
  @change, @keyspace, @table = args
end

Instance Attribute Details

#changeObject (readonly)

Returns the value of attribute change.



6
7
8
# File 'lib/cql/protocol/responses/schema_change_result_response.rb', line 6

def change
  @change
end

#keyspaceObject (readonly)

Returns the value of attribute keyspace.



6
7
8
# File 'lib/cql/protocol/responses/schema_change_result_response.rb', line 6

def keyspace
  @keyspace
end

#tableObject (readonly)

Returns the value of attribute table.



6
7
8
# File 'lib/cql/protocol/responses/schema_change_result_response.rb', line 6

def table
  @table
end

Class Method Details

.decode!(buffer) ⇒ Object



12
13
14
# File 'lib/cql/protocol/responses/schema_change_result_response.rb', line 12

def self.decode!(buffer)
  new(read_string!(buffer), read_string!(buffer), read_string!(buffer))
end

Instance Method Details

#eql?(other) ⇒ Boolean Also known as: ==

Returns:

  • (Boolean)


16
17
18
# File 'lib/cql/protocol/responses/schema_change_result_response.rb', line 16

def eql?(other)
  self.change == other.change && self.keyspace == other.keyspace && self.table == other.table
end

#hashObject



21
22
23
24
25
26
27
28
29
# File 'lib/cql/protocol/responses/schema_change_result_response.rb', line 21

def hash
  @h ||= begin
    h = 0
    h = ((h & 0xffffffff) * 31) ^ @change.hash
    h = ((h & 0xffffffff) * 31) ^ @keyspace.hash
    h = ((h & 0xffffffff) * 31) ^ @table.hash
    h
  end
end

#to_sObject



31
32
33
# File 'lib/cql/protocol/responses/schema_change_result_response.rb', line 31

def to_s
  %(RESULT SCHEMA_CHANGE #@change "#@keyspace" "#@table")
end