class Cql::Client::KeyspaceChanger
@private
Constants
- KEYSPACE_NAME_PATTERN
Public Class Methods
new(request_runner=RequestRunner.new)
click to toggle source
# File lib/cql/client/keyspace_changer.rb, line 9 def initialize(request_runner=RequestRunner.new) @request_runner = request_runner end
Public Instance Methods
use_keyspace(connection, keyspace)
click to toggle source
# File lib/cql/client/keyspace_changer.rb, line 13 def use_keyspace(connection, keyspace) return Future.resolved(connection) unless keyspace return Future.failed(InvalidKeyspaceNameError.new(%("#{keyspace}" is not a valid keyspace name))) unless valid_keyspace_name?(keyspace) request = Protocol::QueryRequest.new("USE #{keyspace}", nil, nil, :one) @request_runner.execute(connection, request).map(connection) end
Private Instance Methods
valid_keyspace_name?(name)
click to toggle source
# File lib/cql/client/keyspace_changer.rb, line 22 def valid_keyspace_name?(name) name =~ KEYSPACE_NAME_PATTERN end