Class: Couchbase::Cluster::SearchFacet::SearchFacetDateRange

Inherits:
Object
  • Object
show all
Defined in:
lib/couchbase/search_options.rb,
/Users/sergey.auseyau/code/couchbase-ruby-client/lib/couchbase/search_options.rb
more...

Constant Summary collapse

DATE_FORMAT_RFC3339 =
"%Y-%m-%dT%H:%M:%S%:z".freeze

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(field) {|_self| ... } ⇒ SearchFacetDateRange

Returns a new instance of SearchFacetDateRange.

Parameters:

  • field (String)

    name of the field

Yields:

  • (_self)

Yield Parameters:

[View source]

1126
1127
1128
1129
1130
1131
# File 'lib/couchbase/search_options.rb', line 1126

def initialize(field)
  super()
  @field = field
  @ranges = []
  yield self if block_given?
end

Instance Attribute Details

#fieldString (readonly)

Returns:

  • (String)

1120
1121
1122
# File 'lib/couchbase/search_options.rb', line 1120

def field
  @field
end

#sizeInteger

Returns:

  • (Integer)

1123
1124
1125
# File 'lib/couchbase/search_options.rb', line 1123

def size
  @size
end

Instance Method Details

#add(name, start_time, end_time) ⇒ Object

Parameters:

  • name (String)

    the name of the range

  • start_time (Time, String, nil)

    lower bound of the range (pass nil if there is no lower bound)

  • end_time (Time, String, nil)

    lower bound of the range (pass nil if there is no lower bound)

[View source]

1138
1139
1140
1141
1142
# File 'lib/couchbase/search_options.rb', line 1138

def add(name, start_time, end_time)
  start_time = start_time.strftime(DATE_FORMAT_RFC3339) if start_time.respond_to?(:strftime)
  end_time = end_time.strftime(DATE_FORMAT_RFC3339) if end_time.respond_to?(:strftime)
  @ranges.append({name: name, start: start_time, end: end_time})
end