class Sort::ScriptSortBuilder
Constants
- NAME
Public Class Methods
new(script:, type: @script = script)
click to toggle source
@params:
script: Script used in this sort. type: Script sort type used in this sort, can be (number, string). nested_sort: Nested path within current object. sort_mode: Defines which distance to use for sorting in the case a document contains multiple values.
# File lib/sort/script_sort_builder.rb, line 16 def initialize script:, type: @script = script @type = type.script_sort_type @nested_sort = nil @sort_mode = nil end
Public Instance Methods
nested_sort(nested_sort)
click to toggle source
sets nested_sort
# File lib/sort/script_sort_builder.rb, line 49 def nested_sort nested_sort @nested_sort = nested_sort return self end
nested_sort_expr()
click to toggle source
returns nested_sort
# File lib/sort/script_sort_builder.rb, line 45 def nested_sort_expr return @nested_sort end
query()
click to toggle source
# File lib/sort/script_sort_builder.rb, line 23 def query query = {} script_query = self.common_query script_query[:script] = @script.settings script_query[:type] = @type script_query[:nested] = @nested_sort.query if @nested_sort.present? script_sort[:sort_mode] = @sort_mode if @sort_mode.present? query[name.intern] = script_query return query end
script_expr()
click to toggle source
returns script
# File lib/sort/script_sort_builder.rb, line 35 def script_expr return @script end
sort_mode(sort_mode)
click to toggle source
sets sort_mode
# File lib/sort/script_sort_builder.rb, line 59 def sort_mode sort_mode @sort_mode = sort_mode.sort_mode return self end
sort_mode_expr()
click to toggle source
returns sort_mode
# File lib/sort/script_sort_builder.rb, line 55 def sort_mode_expr return @sort_mode end
type_expr()
click to toggle source
returns type
# File lib/sort/script_sort_builder.rb, line 40 def type_expr return @type end