class Dymos::Query::Query
Public Instance Methods
_add_filter(column, operator, value)
click to toggle source
# File lib/dymos/query/query.rb, line 70 def _add_filter(column, operator, value) [column.to_s, { attribute_value_list: [*value], comparison_operator: operator.to_s.upcase } ] end
add_conditions(*values)
click to toggle source
# File lib/dymos/query/query.rb, line 44 def add_conditions(*values) column, operator, value = parse_condition(*values) @query[:key_conditions] ||= {} @query[:key_conditions].store(*_add_filter(column, operator, value)) self end
add_filter(*values)
click to toggle source
# File lib/dymos/query/query.rb, line 62 def add_filter(*values) column, operator, value = parse_condition(*values) @query[:query_filter] ||= {} @query[:query_filter].store(*_add_filter(column, operator, value)) filter_operator 'AND' if @query[:conditional_operator].blank? && @query[:query_filter].count > 1 self end
asc()
click to toggle source
# File lib/dymos/query/query.rb, line 83 def asc scan_index_forward true end
attributes(*value)
click to toggle source
# File lib/dymos/query/query.rb, line 15 def attributes(*value) @query[:attributes_to_get] = value self end
command()
click to toggle source
# File lib/dymos/query/query.rb, line 6 def command 'query' end
comparison_operator(value)
click to toggle source
# File lib/dymos/query/query.rb, line 51 def comparison_operator(value) @query[:comparison_operator] = value.to_s.upcase self end
conditions(value)
click to toggle source
# File lib/dymos/query/query.rb, line 39 def conditions(value) value.map { |v| add_conditions(*v) } self end
consistent_read(value)
click to toggle source
# File lib/dymos/query/query.rb, line 25 def consistent_read(value) @query[:consistent_read] = value self end
desc()
click to toggle source
# File lib/dymos/query/query.rb, line 87 def desc scan_index_forward false end
exclusive_start_key(value)
click to toggle source
# File lib/dymos/query/query.rb, line 96 def exclusive_start_key(value) @query[:exclusive_start_key] = value.deep_stringify_keys self end
Also aliased as: start_key
filter(value, operator='AND')
click to toggle source
# File lib/dymos/query/query.rb, line 56 def filter(value, operator='AND') value.map { |v| add_filter(*v) } filter_operator operator.to_s.upcase if value.count > 1 self end
filter_operator(value)
click to toggle source
# File lib/dymos/query/query.rb, line 78 def filter_operator(value) @query[:conditional_operator] = value.to_s.upcase self end
index(value)
click to toggle source
# File lib/dymos/query/query.rb, line 10 def index(value) @query[:index_name] = value.to_s self end
limit(value)
click to toggle source
# File lib/dymos/query/query.rb, line 20 def limit(value) @query[:limit] = value self end
return_consumed_capacity(value)
click to toggle source
# File lib/dymos/query/query.rb, line 103 def return_consumed_capacity(value) @query[:return_consumed_capacity] = value.to_s.upcase self end
scan_index_forward(value)
click to toggle source
# File lib/dymos/query/query.rb, line 91 def scan_index_forward(value) @query[:scan_index_forward] = value self end
where(*value)
click to toggle source
# File lib/dymos/query/query.rb, line 30 def where(*value) if value.count == 1 && value[0].is_a?(Hash) value[0].each { |k, v| add_conditions(k, :eq, v) } else value.each { |v| add_conditions(*v) } end self end