Class: Qiita::Elasticsearch::QueryBuilder
- Inherits:
-
Object
- Object
- Qiita::Elasticsearch::QueryBuilder
- Defined in:
- lib/qiita/elasticsearch/query_builder.rb
Instance Method Summary collapse
- #build(query_string) ⇒ Hash
-
#initialize(date_fields: nil, downcased_fields: nil, hierarchal_fields: nil, filterable_fields: nil, int_fields: nil, matchable_fields: nil, time_zone: nil) ⇒ QueryBuilder
constructor
A new instance of QueryBuilder.
Constructor Details
#initialize(date_fields: nil, downcased_fields: nil, hierarchal_fields: nil, filterable_fields: nil, int_fields: nil, matchable_fields: nil, time_zone: nil) ⇒ QueryBuilder
Returns a new instance of QueryBuilder.
16 17 18 19 20 21 22 23 24 |
# File 'lib/qiita/elasticsearch/query_builder.rb', line 16 def initialize(date_fields: nil, downcased_fields: nil, hierarchal_fields: nil, filterable_fields: nil, int_fields: nil, matchable_fields: nil, time_zone: nil) @date_fields = date_fields @downcased_fields = downcased_fields @filterable_fields = filterable_fields @hierarchal_fields = hierarchal_fields @int_fields = int_fields @matchable_fields = matchable_fields @time_zone = time_zone end |
Instance Method Details
#build(query_string) ⇒ Hash
28 29 30 31 32 33 34 35 36 37 |
# File 'lib/qiita/elasticsearch/query_builder.rb', line 28 def build(query_string) tokens = tokenizer.tokenize(query_string) if tokens.size.zero? Nodes::NullNode.new.to_hash else Nodes::OrSeparatableNode.new(tokens).to_hash end rescue Error Nodes::NullNode.new.to_hash end |