Class: DatastaxRails::Cql::CreateColumnFamily
- Defined in:
- lib/datastax_rails/cql/create_column_family.rb
Overview
CQL generation for CREATE COLUMNFAMILY
Instance Method Summary collapse
- #columns(columns) ⇒ Object
-
#comment=(comment) ⇒ Object
Migration helpers.
- #comparator=(comp) ⇒ Object
- #default_validation=(val) ⇒ Object
-
#initialize(cf_name) ⇒ CreateColumnFamily
constructor
A new instance of CreateColumnFamily.
- #primary_key(pk) ⇒ Object
- #to_cql ⇒ Object
- #with(with) ⇒ Object
Methods inherited from Base
Constructor Details
#initialize(cf_name) ⇒ CreateColumnFamily
Returns a new instance of CreateColumnFamily.
5 6 7 8 9 10 |
# File 'lib/datastax_rails/cql/create_column_family.rb', line 5 def initialize(cf_name) @cf_name = cf_name @columns = {} @storage_parameters = [] @primary_key = 'id' end |
Instance Method Details
#columns(columns) ⇒ Object
22 23 24 25 |
# File 'lib/datastax_rails/cql/create_column_family.rb', line 22 def columns(columns) @columns.merge! columns self end |
#comment=(comment) ⇒ Object
Migration helpers
28 29 30 |
# File 'lib/datastax_rails/cql/create_column_family.rb', line 28 def comment=(comment) with('comment' => comment) end |
#comparator=(comp) ⇒ Object
32 33 34 |
# File 'lib/datastax_rails/cql/create_column_family.rb', line 32 def comparator=(comp) with('comparator' => comp) end |
#default_validation=(val) ⇒ Object
36 37 38 |
# File 'lib/datastax_rails/cql/create_column_family.rb', line 36 def default_validation=(val) with('default_validation' => val) end |
#primary_key(pk) ⇒ Object
12 13 14 15 |
# File 'lib/datastax_rails/cql/create_column_family.rb', line 12 def primary_key(pk) @primary_key = pk self end |
#to_cql ⇒ Object
40 41 42 43 44 45 46 47 48 49 50 51 52 |
# File 'lib/datastax_rails/cql/create_column_family.rb', line 40 def to_cql stmt = "CREATE COLUMNFAMILY #{@cf_name} (" @columns.each do |name, type| stmt << "#{name} #{type}, " end stmt << "PRIMARY KEY (#{@primary_key}))" unless @storage_parameters.empty? stmt << ' WITH ' stmt << @storage_parameters.flatten.join(' AND ') end stmt end |
#with(with) ⇒ Object
17 18 19 20 |
# File 'lib/datastax_rails/cql/create_column_family.rb', line 17 def with(with) @storage_parameters << with self end |