Class: Couchbase::SearchQuery::GeoDistanceQuery

Inherits:
Couchbase::SearchQuery show all
Defined in:
lib/couchbase/search_options.rb

Overview

Finds ‘geopoint` indexed matches around a point with the given distance.

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods inherited from Couchbase::SearchQuery

boolean_field, booleans, conjuncts, date_range, disjuncts, doc_id, geo_bounding_box, geo_distance, geo_polygon, match, match_all, match_none, match_phrase, numeric_range, phrase, prefix, query_string, regexp, term, term_range, #to_json, wildcard

Constructor Details

#initialize(longitude, latitude, distance) {|self| ... } ⇒ GeoDistanceQuery

Returns a new instance of GeoDistanceQuery.

Parameters:

  • longitude (Float)
  • latitude (Float)
  • distance (Float)

Yield Parameters:



598
599
600
601
602
603
604
# File 'lib/couchbase/search_options.rb', line 598

def initialize(longitude, latitude, distance)
  super()
  @longitude = longitude
  @latitude = latitude
  @distance = distance
  yield self if block_given?
end

Instance Attribute Details

#boostFloat

Returns:

  • (Float)


589
590
591
# File 'lib/couchbase/search_options.rb', line 589

def boost
  @boost
end

#fieldString

Returns:

  • (String)


592
593
594
# File 'lib/couchbase/search_options.rb', line 592

def field
  @field
end

Instance Method Details

#to_hHash<Symbol, #to_json>

Returns:



607
608
609
610
611
612
613
614
615
# File 'lib/couchbase/search_options.rb', line 607

def to_h
  data = {
    :location => [@longitude, @latitude],
    :distance => @distance,
  }
  data[:boost] = boost if boost
  data[:field] = field if field
  data
end