Class: CassandraObject::Tasks::ColumnFamily
- Inherits:
-
Object
- Object
- CassandraObject::Tasks::ColumnFamily
- Defined in:
- lib/cassandra_object/tasks/column_family.rb
Constant Summary collapse
- COMPARATOR_TYPES =
{ :time => 'TimeUUIDType', :timestamp => 'TimeUUIDType', :long => 'LongType', :string => 'BytesType', :utf8 => 'UTF8Type' }
- COLUMN_TYPES =
{ :standard => 'Standard', :super => 'Super' }
Instance Method Summary collapse
- #clear(name) ⇒ Object
- #create(name, options = {}, &block) ⇒ Object
- #drop(name) ⇒ Object
- #exists?(name) ⇒ Boolean
-
#initialize(keyspace) ⇒ ColumnFamily
constructor
A new instance of ColumnFamily.
- #rename(old_name, new_name) ⇒ Object
Constructor Details
#initialize(keyspace) ⇒ ColumnFamily
Returns a new instance of ColumnFamily.
16 17 18 |
# File 'lib/cassandra_object/tasks/column_family.rb', line 16 def initialize(keyspace) @keyspace = keyspace end |
Instance Method Details
#clear(name) ⇒ Object
51 52 53 |
# File 'lib/cassandra_object/tasks/column_family.rb', line 51 def clear(name) connection.truncate!(name.to_s) end |
#create(name, options = {}, &block) ⇒ Object
24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
# File 'lib/cassandra_object/tasks/column_family.rb', line 24 def create(name, ={}, &block) = { :comparator_type => 'BytesType', :column_type => 'Standard', }.merge() cf = Cassandra::ColumnFamily.new cf.name = name.to_s cf.keyspace = @keyspace.to_s .each do |option, value| cf.send("#{option}=", value) end block.call cf if block post_process_column_family(cf) connection.add_column_family(cf) end |
#drop(name) ⇒ Object
43 44 45 |
# File 'lib/cassandra_object/tasks/column_family.rb', line 43 def drop(name) connection.drop_column_family(name.to_s) end |
#exists?(name) ⇒ Boolean
20 21 22 |
# File 'lib/cassandra_object/tasks/column_family.rb', line 20 def exists?(name) connection.schema.cf_defs.find { |cf_def| cf_def.name == name.to_s } end |
#rename(old_name, new_name) ⇒ Object
47 48 49 |
# File 'lib/cassandra_object/tasks/column_family.rb', line 47 def rename(old_name, new_name) connection.rename_column_family(old_name.to_s, new_name.to_s) end |