Class: CassandraObject::CounterBase
- Inherits:
-
Object
- Object
- CassandraObject::CounterBase
show all
- Extended by:
- ActiveModel::Naming, ActiveSupport::DescendantsTracker, Model
- Includes:
- ActiveModel::Conversion, Connection, Consistency, Identity, Inspect
- Defined in:
- lib/cassandra_object/counter_base.rb
Class Method Summary
collapse
Methods included from Model
base_class, column_family, column_family=, config, config=
Methods included from Inspect
#attribute_for_inspect, #inspect
Class Method Details
.base_class ⇒ Object
4
5
6
|
# File 'lib/cassandra_object/counter_base.rb', line 4
def base_class
self
end
|
.config ⇒ Object
8
9
10
|
# File 'lib/cassandra_object/counter_base.rb', line 8
def config
Base.config
end
|
.get(group, counter = nil) ⇒ Object
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
# File 'lib/cassandra_object/counter_base.rb', line 12
def get(group, counter=nil)
cql_string = "SELECT #{select_counter(counter)} FROM #{column_family} WHERE KEY = ?"
results = []
attributes = execute_cql(cql_string, group).fetch_hash
attributes.delete("KEY")
results << attributes
if !group.is_a?(Array) && results.size <= 1
results = results.first
if counter && !counter.is_a?(Array) && results.size <= 1
results = results.values.first
end
end
results
end
|
.update(group, counter, count = nil) ⇒ Object
29
30
31
|
# File 'lib/cassandra_object/counter_base.rb', line 29
def update(group, counter, count=nil)
execute_cql "UPDATE #{column_family} SET #{counter_updates(counter, count)} WHERE KEY = '#{group}'"
end
|