class AgnosticBackend::Queryable::Cloudsearch::Executor

Public Instance Methods

execute() click to toggle source
# File lib/agnostic_backend/queryable/cloudsearch/executor.rb, line 9
def execute
  with_exponential_backoff Aws::CloudSearch::Errors::Throttling do
    response = client.search(params)
    ResultSet.new(response, query)
  end
end
params() click to toggle source
# File lib/agnostic_backend/queryable/cloudsearch/executor.rb, line 29
def params
  {
    cursor: scroll_cursor,
    expr: expr,
    facet: facet,
    filter_query: filter_query,
    highlight: highlight,
    partial: partial,
    query: query_expression,
    query_options: query_options,
    query_parser: query_parser,
    return: return_expression,
    size: size,
    sort: sort,
    start: start
  }
end
to_s() click to toggle source
# File lib/agnostic_backend/queryable/cloudsearch/executor.rb, line 16
def to_s
  result = ''
  result += "search?q=#{query_expression}" if query_expression
  result += " filter=#{filter_query}" if filter_query
  result += " return=#{return_expression}" if return_expression
  result += " sort=#{sort}" if sort
  result += " size=#{size}" if size
  result += " offset=#{start}" if start
  result += " cursor=#{scroll_cursor}" if scroll_cursor
  result += " parser=#{query_parser}"
  result
end

Private Instance Methods

client() click to toggle source
# File lib/agnostic_backend/queryable/cloudsearch/executor.rb, line 53
def client
  query.context.index.cloudsearch_domain_client
end
expr() click to toggle source
# File lib/agnostic_backend/queryable/cloudsearch/executor.rb, line 73
def expr
end
facet() click to toggle source
# File lib/agnostic_backend/queryable/cloudsearch/executor.rb, line 76
def facet
end
filter_query() click to toggle source
# File lib/agnostic_backend/queryable/cloudsearch/executor.rb, line 57
def filter_query
  filter_expression.accept(filter_visitor) if filter_expression
end
filter_visitor() click to toggle source
# File lib/agnostic_backend/queryable/cloudsearch/executor.rb, line 49
def filter_visitor
  options[:filter_visitor]
end
highlight() click to toggle source
# File lib/agnostic_backend/queryable/cloudsearch/executor.rb, line 79
def highlight
end
partial() click to toggle source
# File lib/agnostic_backend/queryable/cloudsearch/executor.rb, line 82
def partial
  false
end
query_expression() click to toggle source
# File lib/agnostic_backend/queryable/cloudsearch/executor.rb, line 61
def query_expression
  where_expression ? where_expression.accept(visitor) : 'matchall'
end
query_options() click to toggle source
# File lib/agnostic_backend/queryable/cloudsearch/executor.rb, line 86
def query_options
end
query_parser() click to toggle source
# File lib/agnostic_backend/queryable/cloudsearch/executor.rb, line 89
def query_parser
  case visitor
  when SimpleVisitor
    'simple'
  else
    'structured'
  end
end
return_expression() click to toggle source
# File lib/agnostic_backend/queryable/cloudsearch/executor.rb, line 98
def return_expression
  select_expression.accept(visitor) if select_expression
end
scroll_cursor() click to toggle source
# File lib/agnostic_backend/queryable/cloudsearch/executor.rb, line 65
def scroll_cursor
  scroll_cursor_expression.accept(visitor) if scroll_cursor_expression
end
size() click to toggle source
# File lib/agnostic_backend/queryable/cloudsearch/executor.rb, line 102
def size
  limit_expression.accept(visitor) if limit_expression
end
sort() click to toggle source
# File lib/agnostic_backend/queryable/cloudsearch/executor.rb, line 106
def sort
  order_expression.accept(visitor) if order_expression
end
start() click to toggle source
# File lib/agnostic_backend/queryable/cloudsearch/executor.rb, line 69
def start
  offset_expression.accept(visitor) if offset_expression
end