cassandra-driver 1.0.0.rc.1-java → 1.1.0-java

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (47) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +58 -18
  3. data/lib/cassandra.rb +132 -93
  4. data/lib/cassandra/auth.rb +3 -3
  5. data/lib/cassandra/cluster.rb +65 -39
  6. data/lib/cassandra/cluster/client.rb +67 -28
  7. data/lib/cassandra/{client/connection_manager.rb → cluster/connection_pool.rb} +9 -3
  8. data/lib/cassandra/cluster/connector.rb +101 -30
  9. data/lib/cassandra/cluster/control_connection.rb +160 -96
  10. data/lib/cassandra/{client/null_logger.rb → cluster/failed_connection.rb} +12 -14
  11. data/lib/cassandra/cluster/options.rb +26 -11
  12. data/lib/cassandra/cluster/schema.rb +22 -1
  13. data/lib/cassandra/column.rb +5 -0
  14. data/lib/cassandra/driver.rb +46 -12
  15. data/lib/cassandra/errors.rb +5 -5
  16. data/lib/cassandra/execution/options.rb +42 -8
  17. data/lib/cassandra/execution/trace.rb +4 -4
  18. data/lib/cassandra/executors.rb +111 -0
  19. data/lib/cassandra/future.rb +88 -64
  20. data/lib/cassandra/keyspace.rb +12 -0
  21. data/lib/cassandra/load_balancing.rb +10 -0
  22. data/lib/cassandra/load_balancing/policies/dc_aware_round_robin.rb +10 -5
  23. data/lib/cassandra/load_balancing/policies/round_robin.rb +7 -5
  24. data/lib/cassandra/load_balancing/policies/token_aware.rb +31 -10
  25. data/lib/cassandra/load_balancing/policies/white_list.rb +4 -7
  26. data/lib/cassandra/null_logger.rb +35 -0
  27. data/lib/cassandra/protocol/cql_protocol_handler.rb +8 -1
  28. data/lib/cassandra/protocol/requests/query_request.rb +1 -11
  29. data/lib/cassandra/result.rb +34 -9
  30. data/lib/cassandra/session.rb +6 -0
  31. data/lib/cassandra/statements/prepared.rb +5 -1
  32. data/lib/cassandra/table.rb +5 -0
  33. data/lib/cassandra/util.rb +130 -0
  34. data/lib/cassandra/version.rb +1 -1
  35. metadata +40 -50
  36. data/lib/cassandra/client.rb +0 -144
  37. data/lib/cassandra/client/batch.rb +0 -212
  38. data/lib/cassandra/client/client.rb +0 -591
  39. data/lib/cassandra/client/column_metadata.rb +0 -54
  40. data/lib/cassandra/client/connector.rb +0 -273
  41. data/lib/cassandra/client/execute_options_decoder.rb +0 -59
  42. data/lib/cassandra/client/peer_discovery.rb +0 -50
  43. data/lib/cassandra/client/prepared_statement.rb +0 -314
  44. data/lib/cassandra/client/query_result.rb +0 -230
  45. data/lib/cassandra/client/request_runner.rb +0 -70
  46. data/lib/cassandra/client/result_metadata.rb +0 -48
  47. data/lib/cassandra/client/void_result.rb +0 -78
@@ -190,7 +190,10 @@ module Cassandra
190
190
  @terminate = nil
191
191
  end
192
192
 
193
- @connection.close(cause)
193
+ @scheduler.schedule_timer(0).on_value do
194
+ @connection.close(cause)
195
+ end
196
+
194
197
  @closed_promise.future
195
198
  end
196
199
 
@@ -344,6 +347,8 @@ module Cassandra
344
347
  end
345
348
 
346
349
  def schedule_heartbeat
350
+ return unless @heartbeat_interval
351
+
347
352
  timer = nil
348
353
 
349
354
  @lock.synchronize do
@@ -360,6 +365,8 @@ module Cassandra
360
365
  end
361
366
 
362
367
  def reschedule_termination
368
+ return unless @idle_timeout
369
+
363
370
  timer = nil
364
371
 
365
372
  @lock.synchronize do
@@ -39,11 +39,7 @@ module Cassandra
39
39
  end
40
40
 
41
41
  def write(protocol_version, buffer)
42
- if protocol_version > 1
43
- buffer.append_long_string(@cql)
44
- else
45
- buffer.append_long_string(serialized_cql)
46
- end
42
+ buffer.append_long_string(@cql)
47
43
  buffer.append_consistency(@consistency)
48
44
  if protocol_version > 1
49
45
  flags = 0
@@ -108,12 +104,6 @@ module Cassandra
108
104
 
109
105
  private
110
106
 
111
- def serialized_cql
112
- return @cql if @values.nil? || @values.empty?
113
- i = -1
114
- @cql.gsub('?') { Util.encode(@values[i += 1]) }
115
- end
116
-
117
107
  def self.guess_type(value)
118
108
  type = TYPE_GUESSES[value.class]
119
109
  if type == :map
@@ -51,6 +51,8 @@ module Cassandra
51
51
  # @param options [Hash] additional options, just like the ones for
52
52
  # {Cassandra::Session#execute}
53
53
  #
54
+ # @note `:paging_state` option will be ignored.
55
+ #
54
56
  # @return [Cassandra::Result, nil] returns `nil` if last page
55
57
  #
56
58
  # @see Cassandra::Session#execute
@@ -62,17 +64,38 @@ module Cassandra
62
64
  # @param options [Hash] additional options, just like the ones for
63
65
  # {Cassandra::Session#execute_async}
64
66
  #
67
+ # @note `:paging_state` option will be ignored.
68
+ #
65
69
  # @return [Cassandra::Future<Cassandra::Result, nil>] `nil` if last
66
70
  # page
67
71
  #
68
72
  # @see Cassandra::Session#execute
69
73
  def next_page_async(options = nil)
70
74
  end
75
+
76
+ # Exposes current paging state for stateless pagination.
77
+ #
78
+ # @return [String, nil] current paging state as a `String` or `nil`.
79
+ #
80
+ # @note Although this feature exists to allow web applications to store
81
+ # paging state in an [HTTP cookie](http://en.wikipedia.org/wiki/HTTP_cookie), **it is not safe to
82
+ # expose without encrypting or otherwise securing it**. Paging state
83
+ # contains information internal to the Apache Cassandra cluster, such as
84
+ # partition key and data. Additionally, if a paging state is sent with CQL
85
+ # statement, different from the original, the behavior of Cassandra is
86
+ # undefined and will likely cause a server process of the coordinator of
87
+ # such request to abort.
88
+ #
89
+ # @see https://github.com/apache/cassandra/blob/trunk/doc/native_protocol_v2.spec#L482-L487 Paging State description in Cassandra Native Protocol v2 specification
90
+ def paging_state
91
+ end
71
92
  end
72
93
 
73
94
  # @private
74
95
  module Results
75
96
  class Paged < Result
97
+ attr_reader :paging_state
98
+
76
99
  def initialize(rows, paging_state, trace_id, keyspace, statement, options, hosts, consistency, retries, client, futures_factory)
77
100
  @rows = rows
78
101
  @paging_state = paging_state
@@ -124,12 +147,12 @@ module Cassandra
124
147
  def next_page_async(options = nil)
125
148
  return @futures.value(nil) if @paging_state.nil?
126
149
 
127
- options = options ? @options.override(options) : @options
150
+ options = @options.override(options, paging_state: @paging_state)
128
151
 
129
152
  if @statement.is_a?(Statements::Simple)
130
- @client.query(@statement, options, @paging_state)
153
+ @client.query(@statement, options)
131
154
  else
132
- @client.execute(@statement, options, @paging_state)
155
+ @client.execute(@statement, options)
133
156
  end
134
157
  end
135
158
 
@@ -180,10 +203,9 @@ module Cassandra
180
203
  # Returns true when there are no more pages to load.
181
204
  #
182
205
  # This is only relevant when you have requested paging of the results with
183
- # the `:page_size` option to {Cassandra::Client::Client#execute} or
184
- # {Cassandra::Client::PreparedStatement#execute}.
206
+ # the `:page_size` option to {Cassandra::Session#execute}.
185
207
  #
186
- # @see Cassandra::Client::Client#execute
208
+ # @see Cassandra::Session#execute
187
209
  def last_page?
188
210
  true
189
211
  end
@@ -191,10 +213,9 @@ module Cassandra
191
213
  # Returns the next page or nil when there is no next page.
192
214
  #
193
215
  # This is only relevant when you have requested paging of the results with
194
- # the `:page_size` option to {Cassandra::Client::Client#execute} or
195
- # {Cassandra::Client::PreparedStatement#execute}.
216
+ # the `:page_size` option to {Cassandra::Session#execute_async}.
196
217
  #
197
- # @see Cassandra::Client::Client#execute
218
+ # @see Cassandra::Session#execute_async
198
219
  def next_page_async(options = nil)
199
220
  @futures.value(nil)
200
221
  end
@@ -203,6 +224,10 @@ module Cassandra
203
224
  nil
204
225
  end
205
226
 
227
+ def paging_state
228
+ nil
229
+ end
230
+
206
231
  def inspect
207
232
  "#<Cassandra::Result:0x#{self.object_id.to_s(16)} @rows=[] @last_page=true>"
208
233
  end
@@ -53,6 +53,9 @@ module Cassandra
53
53
  # @option options [Symbol] :serial_consistency (nil) this option is only
54
54
  # relevant for conditional updates and specifies a serial consistency to
55
55
  # be used, one of {Cassandra::SERIAL_CONSISTENCIES}
56
+ # @option options [String] :paging_state (nil) this option is used for
57
+ # stateless paging, where result paging is resumed some time after the
58
+ # initial request.
56
59
  #
57
60
  # @see Cassandra.cluster Options that can be specified on the cluster-level
58
61
  # and their default values.
@@ -61,6 +64,9 @@ module Cassandra
61
64
  # Therefore, make sure to pass empty `options` when executing a statement
62
65
  # with the last parameter required to be a map datatype.
63
66
  #
67
+ # @note Positional arguments are only supported on Apache Cassandra 2.0 and
68
+ # above.
69
+ #
64
70
  # @return [Cassandra::Future<Cassandra::Result>]
65
71
  #
66
72
  # @see Cassandra::Session#execute A list of errors this future can be
@@ -50,7 +50,11 @@ module Cassandra
50
50
  # original cql passed to {Cassandra::Session#prepare}
51
51
  # @return [Cassandra::Statements::Bound] bound statement
52
52
  def bind(*args)
53
- raise ::ArgumentError, "expecting exactly #{@params_metadata.size} bind parameters, #{args.size} given" if args.size != @params_metadata.size
53
+ Util.assert_equal(@params_metadata.size, args.size) { "expecting exactly #{@params_metadata.size} bind parameters, #{args.size} given" }
54
+
55
+ @params_metadata.each_with_index do |metadata, i|
56
+ Util.assert_type(metadata[3], args[i]) { "argument for #{metadata[2].inspect} must be #{metadata[3].inspect}, #{args[i]} given" }
57
+ end
54
58
 
55
59
  return Bound.new(@cql, @params_metadata, @result_metadata, args) if @params_metadata.empty?
56
60
 
@@ -231,6 +231,11 @@ module Cassandra
231
231
  cql << ';'
232
232
  end
233
233
 
234
+ # @return [String] a CLI-friendly table representation
235
+ def inspect
236
+ "#<#{self.class.name}:0x#{self.object_id.to_s(16)} @keyspace=#{@keyspace} @name=#{@name}>"
237
+ end
238
+
234
239
  # @return [Boolean] whether this table is equal to the other
235
240
  def eql?(other)
236
241
  other.is_a?(Table) &&
@@ -137,6 +137,136 @@ module Cassandra
137
137
  DBL_QUOT + name + DBL_QUOT
138
138
  end
139
139
 
140
+ def assert_type(type, value, message = nil, &block)
141
+ return if value.nil?
142
+
143
+ case type
144
+ when ::Array
145
+ case type.first
146
+ when :list
147
+ assert_instance_of(::Array, value, message, &block)
148
+ value.each do |v|
149
+ assert_type(type[1], v)
150
+ end
151
+ when :set
152
+ assert_instance_of(::Set, value, message, &block)
153
+ value.each do |v|
154
+ assert_type(type[1], v)
155
+ end
156
+ when :map
157
+ assert_instance_of(::Hash, value, message, &block)
158
+ value.each do |k, v|
159
+ assert_type(type[1], k)
160
+ assert_type(type[2], v)
161
+ end
162
+ else
163
+ raise ::RuntimeError, "unsupported complex type #{type.inspect}"
164
+ end
165
+ else
166
+ case type
167
+ when :ascii then assert_instance_of(::String, value, message, &block)
168
+ when :bigint then assert_instance_of(::Numeric, value, message, &block)
169
+ when :blob then assert_instance_of(::String, value, message, &block)
170
+ when :boolean then assert_instance_of_one_of([::TrueClass, ::FalseClass], value, message, &block)
171
+ when :counter then assert_instance_of(::Numeric, value, message, &block)
172
+ when :decimal then assert_instance_of(::BigDecimal, value, message, &block)
173
+ when :double then assert_instance_of(::Float, value, message, &block)
174
+ when :float then assert_instance_of(::Float, value, message, &block)
175
+ when :inet then assert_instance_of(::IPAddr, value, message, &block)
176
+ when :int then assert_instance_of(::Numeric, value, message, &block)
177
+ when :text then assert_instance_of(::String, value, message, &block)
178
+ when :varchar then assert_instance_of(::String, value, message, &block)
179
+ when :timestamp then assert_instance_of(::Time, value, message, &block)
180
+ when :timeuuid then assert_instance_of(TimeUuid, value, message, &block)
181
+ when :uuid then assert_instance_of(Uuid, value, message, &block)
182
+ when :varint then assert_instance_of(::Numeric, value, message, &block)
183
+ else
184
+ raise ::RuntimeError, "unsupported type #{type.inspect}"
185
+ end
186
+ end
187
+ end
188
+
189
+ def assert_instance_of(kind, value, message = nil, &block)
190
+ unless value.is_a?(kind)
191
+ message = yield if block_given?
192
+ message ||= "value must be an instance of #{kind}, #{value.inspect} given"
193
+
194
+ raise ::ArgumentError, message
195
+ end
196
+ end
197
+
198
+ def assert_instance_of_one_of(kinds, value, message = nil, &block)
199
+ unless kinds.any? {|kind| value.is_a?(kind)}
200
+ message = yield if block_given?
201
+ message ||= "value must be an instance of one of #{kinds.inspect}, #{value.inspect} given"
202
+
203
+ raise ::ArgumentError, message
204
+ end
205
+ end
206
+
207
+ def assert_responds_to(method, value, message = nil, &block)
208
+ unless value.respond_to?(method)
209
+ message = yield if block_given?
210
+ message ||= "value #{value.inspect} must respond to #{method.inspect}, but doesn't"
211
+
212
+ raise ::ArgumentError, message
213
+ end
214
+ end
215
+
216
+ def assert_responds_to_all(methods, value, message = nil, &block)
217
+ unless methods.all? {|method| value.respond_to?(method)}
218
+ message = yield if block_given?
219
+ message ||= "value #{value.inspect} must respond to all methods #{methods.inspect}, but doesn't"
220
+
221
+ raise ::ArgumentError, message
222
+ end
223
+ end
224
+
225
+ def assert_not_empty(value, message = nil, &block)
226
+ if value.empty?
227
+ message = yield if block_given?
228
+ message ||= "value cannot be empty"
229
+
230
+ raise ::ArgumentError, message
231
+ end
232
+ end
233
+
234
+ def assert_file_exists(path, message = nil, &block)
235
+ unless ::File.exists?(path)
236
+ message = yield if block_given?
237
+ message ||= "expected file at #{path.inspect} to exist, but it doesn't"
238
+
239
+ raise ::ArgumentError, message
240
+ end
241
+ end
242
+
243
+ def assert_one_of(range, value, message = nil, &block)
244
+ unless range.include?(value)
245
+ message = yield if block_given?
246
+ message ||= "value must be included in #{value.inspect}, #{value.inspect} given"
247
+
248
+ raise ::ArgumentError, message
249
+ end
250
+ end
251
+
252
+ def assert(condition, message = nil, &block)
253
+ unless condition
254
+ message = yield if block_given?
255
+ message ||= "assertion failed"
256
+
257
+ raise ::ArgumentError, message
258
+ end
259
+ end
260
+
261
+ def assert_equal(expected, actual, message = nil, &block)
262
+ unless expected == actual
263
+ message = yield if block_given?
264
+ message ||= "expected #{actual.inspect} to equal #{expected.inspect}"
265
+
266
+ raise ::ArgumentError, message
267
+ end
268
+ end
269
+
140
270
  # @private
141
271
  LOWERCASE_REGEXP = /[[:lower:]\_]*/
142
272
  # @private
@@ -17,5 +17,5 @@
17
17
  #++
18
18
 
19
19
  module Cassandra
20
- VERSION = '1.0.0.rc.1'.freeze
20
+ VERSION = '1.1.0'.freeze
21
21
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cassandra-driver
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0.rc.1
4
+ version: 1.1.0
5
5
  platform: java
6
6
  authors:
7
7
  - Theo Hultberg
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2014-10-29 00:00:00.000000000 Z
12
+ date: 2014-12-15 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: ione
@@ -17,12 +17,12 @@ dependencies:
17
17
  requirements:
18
18
  - - ~>
19
19
  - !ruby/object:Gem::Version
20
- version: 1.2.0.pre9
20
+ version: '1.2'
21
21
  requirement: !ruby/object:Gem::Requirement
22
22
  requirements:
23
23
  - - ~>
24
24
  - !ruby/object:Gem::Version
25
- version: 1.2.0.pre9
25
+ version: '1.2'
26
26
  prerelease: false
27
27
  type: :runtime
28
28
  - !ruby/object:Gem::Dependency
@@ -62,72 +62,73 @@ extensions: []
62
62
  extra_rdoc_files:
63
63
  - README.md
64
64
  files:
65
- - .yardopts
66
- - README.md
67
65
  - lib/cassandra.rb
68
66
  - lib/cassandra/address_resolution.rb
67
+ - lib/cassandra/auth.rb
68
+ - lib/cassandra/cluster.rb
69
+ - lib/cassandra/column.rb
70
+ - lib/cassandra/compression.rb
71
+ - lib/cassandra/driver.rb
72
+ - lib/cassandra/errors.rb
73
+ - lib/cassandra/executors.rb
74
+ - lib/cassandra/future.rb
75
+ - lib/cassandra/host.rb
76
+ - lib/cassandra/keyspace.rb
77
+ - lib/cassandra/listener.rb
78
+ - lib/cassandra/load_balancing.rb
79
+ - lib/cassandra/null_logger.rb
80
+ - lib/cassandra/protocol.rb
81
+ - lib/cassandra/reconnection.rb
82
+ - lib/cassandra/result.rb
83
+ - lib/cassandra/retry.rb
84
+ - lib/cassandra/session.rb
85
+ - lib/cassandra/statement.rb
86
+ - lib/cassandra/statements.rb
87
+ - lib/cassandra/table.rb
88
+ - lib/cassandra/time_uuid.rb
89
+ - lib/cassandra/util.rb
90
+ - lib/cassandra/uuid.rb
91
+ - lib/cassandra/version.rb
69
92
  - lib/cassandra/address_resolution/policies.rb
70
93
  - lib/cassandra/address_resolution/policies/ec2_multi_region.rb
71
94
  - lib/cassandra/address_resolution/policies/none.rb
72
- - lib/cassandra/auth.rb
73
95
  - lib/cassandra/auth/providers.rb
74
96
  - lib/cassandra/auth/providers/password.rb
75
- - lib/cassandra/client.rb
76
- - lib/cassandra/client/batch.rb
77
- - lib/cassandra/client/client.rb
78
- - lib/cassandra/client/column_metadata.rb
79
- - lib/cassandra/client/connection_manager.rb
80
- - lib/cassandra/client/connector.rb
81
- - lib/cassandra/client/execute_options_decoder.rb
82
- - lib/cassandra/client/null_logger.rb
83
- - lib/cassandra/client/peer_discovery.rb
84
- - lib/cassandra/client/prepared_statement.rb
85
- - lib/cassandra/client/query_result.rb
86
- - lib/cassandra/client/request_runner.rb
87
- - lib/cassandra/client/result_metadata.rb
88
- - lib/cassandra/client/void_result.rb
89
- - lib/cassandra/cluster.rb
90
97
  - lib/cassandra/cluster/client.rb
98
+ - lib/cassandra/cluster/connection_pool.rb
91
99
  - lib/cassandra/cluster/connector.rb
92
100
  - lib/cassandra/cluster/control_connection.rb
101
+ - lib/cassandra/cluster/failed_connection.rb
93
102
  - lib/cassandra/cluster/metadata.rb
94
103
  - lib/cassandra/cluster/options.rb
95
104
  - lib/cassandra/cluster/registry.rb
96
105
  - lib/cassandra/cluster/schema.rb
97
106
  - lib/cassandra/cluster/schema/partitioners.rb
107
+ - lib/cassandra/cluster/schema/replication_strategies.rb
108
+ - lib/cassandra/cluster/schema/type_parser.rb
98
109
  - lib/cassandra/cluster/schema/partitioners/murmur3.rb
99
110
  - lib/cassandra/cluster/schema/partitioners/ordered.rb
100
111
  - lib/cassandra/cluster/schema/partitioners/random.rb
101
- - lib/cassandra/cluster/schema/replication_strategies.rb
102
112
  - lib/cassandra/cluster/schema/replication_strategies/network_topology.rb
103
113
  - lib/cassandra/cluster/schema/replication_strategies/none.rb
104
114
  - lib/cassandra/cluster/schema/replication_strategies/simple.rb
105
- - lib/cassandra/cluster/schema/type_parser.rb
106
- - lib/cassandra/column.rb
107
- - lib/cassandra/compression.rb
108
115
  - lib/cassandra/compression/compressors/lz4.rb
109
116
  - lib/cassandra/compression/compressors/snappy.rb
110
- - lib/cassandra/driver.rb
111
- - lib/cassandra/errors.rb
112
117
  - lib/cassandra/execution/info.rb
113
118
  - lib/cassandra/execution/options.rb
114
119
  - lib/cassandra/execution/trace.rb
115
- - lib/cassandra/future.rb
116
- - lib/cassandra/host.rb
117
- - lib/cassandra/keyspace.rb
118
- - lib/cassandra/listener.rb
119
- - lib/cassandra/load_balancing.rb
120
120
  - lib/cassandra/load_balancing/policies.rb
121
121
  - lib/cassandra/load_balancing/policies/dc_aware_round_robin.rb
122
122
  - lib/cassandra/load_balancing/policies/round_robin.rb
123
123
  - lib/cassandra/load_balancing/policies/token_aware.rb
124
124
  - lib/cassandra/load_balancing/policies/white_list.rb
125
- - lib/cassandra/protocol.rb
126
125
  - lib/cassandra/protocol/cql_byte_buffer.rb
127
126
  - lib/cassandra/protocol/cql_protocol_handler.rb
128
127
  - lib/cassandra/protocol/frame_decoder.rb
129
128
  - lib/cassandra/protocol/frame_encoder.rb
130
129
  - lib/cassandra/protocol/request.rb
130
+ - lib/cassandra/protocol/response.rb
131
+ - lib/cassandra/protocol/type_converter.rb
131
132
  - lib/cassandra/protocol/requests/auth_response_request.rb
132
133
  - lib/cassandra/protocol/requests/batch_request.rb
133
134
  - lib/cassandra/protocol/requests/credentials_request.rb
@@ -138,7 +139,6 @@ files:
138
139
  - lib/cassandra/protocol/requests/register_request.rb
139
140
  - lib/cassandra/protocol/requests/startup_request.rb
140
141
  - lib/cassandra/protocol/requests/void_query_request.rb
141
- - lib/cassandra/protocol/response.rb
142
142
  - lib/cassandra/protocol/responses/auth_challenge_response.rb
143
143
  - lib/cassandra/protocol/responses/auth_success_response.rb
144
144
  - lib/cassandra/protocol/responses/authenticate_response.rb
@@ -157,31 +157,21 @@ files:
157
157
  - lib/cassandra/protocol/responses/supported_response.rb
158
158
  - lib/cassandra/protocol/responses/topology_change_event_response.rb
159
159
  - lib/cassandra/protocol/responses/void_result_response.rb
160
- - lib/cassandra/protocol/type_converter.rb
161
- - lib/cassandra/reconnection.rb
162
160
  - lib/cassandra/reconnection/policies.rb
163
161
  - lib/cassandra/reconnection/policies/constant.rb
164
162
  - lib/cassandra/reconnection/policies/exponential.rb
165
- - lib/cassandra/result.rb
166
- - lib/cassandra/retry.rb
167
163
  - lib/cassandra/retry/policies.rb
168
164
  - lib/cassandra/retry/policies/default.rb
169
165
  - lib/cassandra/retry/policies/downgrading_consistency.rb
170
166
  - lib/cassandra/retry/policies/fallthrough.rb
171
- - lib/cassandra/session.rb
172
- - lib/cassandra/statement.rb
173
- - lib/cassandra/statements.rb
174
167
  - lib/cassandra/statements/batch.rb
175
168
  - lib/cassandra/statements/bound.rb
176
169
  - lib/cassandra/statements/prepared.rb
177
170
  - lib/cassandra/statements/simple.rb
178
171
  - lib/cassandra/statements/void.rb
179
- - lib/cassandra/table.rb
180
- - lib/cassandra/time_uuid.rb
181
- - lib/cassandra/util.rb
182
- - lib/cassandra/uuid.rb
183
172
  - lib/cassandra/uuid/generator.rb
184
- - lib/cassandra/version.rb
173
+ - README.md
174
+ - .yardopts
185
175
  - lib/cassandra_murmur3.jar
186
176
  homepage: http://datastax.github.io/ruby-driver
187
177
  licenses:
@@ -203,12 +193,12 @@ required_ruby_version: !ruby/object:Gem::Requirement
203
193
  version: 1.9.3
204
194
  required_rubygems_version: !ruby/object:Gem::Requirement
205
195
  requirements:
206
- - - '>'
196
+ - - '>='
207
197
  - !ruby/object:Gem::Version
208
- version: 1.3.1
198
+ version: '0'
209
199
  requirements: []
210
200
  rubyforge_project:
211
- rubygems_version: 2.4.2
201
+ rubygems_version: 2.1.9
212
202
  signing_key:
213
203
  specification_version: 4
214
204
  summary: Datastax Ruby Driver for Apache Cassandra