class Flex::Template::Search

Public Class Methods

new(data, vars=nil) click to toggle source
Calls superclass method Flex::Template::new
# File lib/flex/template/search.rb, line 5
def initialize(data, vars=nil)
  super('GET', '/<<index>>/<<type>>/_search', data, vars)
end

Public Instance Methods

to_a(*vars) click to toggle source
Calls superclass method Flex::Template#to_a
# File lib/flex/template/search.rb, line 9
def to_a(*vars)
  a = super
  2.times{ a.delete_at 0 }
  a
end
to_msearch(*vars) click to toggle source
# File lib/flex/template/search.rb, line 15
def to_msearch(*vars)
  vars   = Vars.new(*vars)
  int    = interpolate(vars, strict=true)
  header = {}
  header[:index] = int[:vars][:index] if int[:vars][:index]
  header[:type]  = int[:vars][:type]  if int[:vars][:type]
  [:search_type, :preferences, :routing].each do |k|
    header[k] = int[:vars][k] if int[:vars][k] || int[:vars][:params] && int[:vars][:params][k]
  end
  data, encoded = build_data(int, vars)
  "#{MultiJson.encode(header)}\n#{encoded}\n"
end