Class: Riak::YzQuery::WhereClause

Inherits:
Object
  • Object
show all
Defined in:
lib/riak/yz_query/where_clause.rb

Instance Method Summary collapse

Constructor Details

#initialize(clause) ⇒ WhereClause

Returns a new instance of WhereClause.



6
7
8
# File 'lib/riak/yz_query/where_clause.rb', line 6

def initialize(clause)
  @clause = clause
end

Instance Method Details

#consume(new_clause) ⇒ Object



21
22
23
24
25
26
27
28
29
30
31
32
33
# File 'lib/riak/yz_query/where_clause.rb', line 21

def consume(new_clause)
  if @clause.is_a? Hash and new_clause.is_a? Hash
    return self.class.new(@clause.merge new_clause)
  end

  if @clause.empty?
    return self.class.new new_clause
  end

  new_clause_query = self.class.new(new_clause).to_yz_query

  return self.class.new "(#{to_yz_query}) AND #{new_clause_query}"
end

#to_yz_queryObject



10
11
12
13
14
15
16
17
18
19
# File 'lib/riak/yz_query/where_clause.rb', line 10

def to_yz_query
  case @clause
  when Hash
    build_clause_hash
  when Array
    escape_clause_array
  when String
    @clause
  end
end