Class: CassandraORM::Base

Inherits:
Object
  • Object
show all
Defined in:
lib/cassandra-orm/base.rb

Direct Known Subclasses

Model

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeBase



8
9
10
# File 'lib/cassandra-orm/base.rb', line 8

def initialize
  fail 'Cannot instantiate CassandraORM::Base' if self == Base
end

Class Method Details

.configure(config) ⇒ Object



13
14
15
16
17
# File 'lib/cassandra-orm/base.rb', line 13

def configure config
  self.config = config.symbolize_keys
  self.keyspace = self.config.delete :keyspace
  fail 'keyspace is required' unless keyspace
end

.connectObject



19
20
21
22
23
# File 'lib/cassandra-orm/base.rb', line 19

def connect
  fail 'Configure CassandraORM first' unless config
  self.cluster = Cassandra.cluster config.merge(page_size: nil)
  self.session = cluster.connect keyspace
end

.reconnectObject



25
26
27
28
29
30
# File 'lib/cassandra-orm/base.rb', line 25

def reconnect
  fail 'Connect to Cassandra first' unless session
  self.session.close_async
  self.cluster.close_async
  connect
end