elasticsearch_hermes 0.0.4.2 → 0.0.4.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 3923c6822a3a4f1f1fff0d0ba1bce68cbdda83c2
4
- data.tar.gz: d15724eb798e20cfecbb0b641a71a8383eb516ff
3
+ metadata.gz: 2f6009a5db9dbdfdab3726836bfac404c93c6f2d
4
+ data.tar.gz: 6a540995c8295459a69911e87ed26116c060077b
5
5
  SHA512:
6
- metadata.gz: a7172c9c57053c493ec15d79b0ad302c71dc9ad2b4cb0151f1cdcab2cab1bfaa956445c73adf25651d2013e1154cbf112fe7e475c1cd34f920a02e22a3f772d5
7
- data.tar.gz: 40e4a5ef7d2462610a57ad4fd5ea574345f414f9ade32e4921337ed63e7a7dd0ea5d8ab54470dda05a86937ab0a89efa083d6842fa3eefda3af3734a5f14ba1b
6
+ metadata.gz: ddfb5842a31d4aa3d9749b596f38f467e545d61ab87d591e43f6c3ff8a410cf06a9d288e32579f55a43a8441d93dc9c093b854f59c3a3fe43f585a3d6f85f8d5
7
+ data.tar.gz: f796c78ad02f5c1001f3f54dddfede7b9fddfcf2d3b5bf73a9137bfe56f093f54f6d3225cc856ceac185e8110374ad32377f2883738ddccecd3d94a3429c9cc7
@@ -5,6 +5,8 @@ require 'elasticsearch_hermes/railtie'
5
5
  require 'elasticsearch_hermes/errors'
6
6
  require 'elasticsearch_hermes/configuration'
7
7
  require 'elasticsearch_hermes/index'
8
+ require 'elasticsearch_hermes/query'
9
+ require 'elasticsearch_hermes/result/base'
8
10
  require 'elasticsearch_hermes/hook'
9
11
  require 'elasticsearch_hermes/logger'
10
12
  require 'elasticsearch_hermes/elasticsearch_hermes'
@@ -0,0 +1,44 @@
1
+ # frozen_string_literal: true
2
+
3
+ module ElasticsearchHermes
4
+ module Query
5
+ def search(query: '', index_name: to_s.underscore, fields: [])
6
+ @results = ElasticsearchHermes.client.search query_payload(
7
+ query: query,
8
+ index_name: index_name,
9
+ fields: fields
10
+ )
11
+ ElasticsearchHermes::Result::Base.new(@results.symbolize_keys)
12
+ end
13
+
14
+ def hermes_search_on(*fields, &block)
15
+ yield
16
+ end
17
+
18
+ def search_type
19
+
20
+ end
21
+
22
+ def field_type
23
+
24
+ end
25
+
26
+ def minimum_match
27
+
28
+ end
29
+
30
+ def query_payload(query:, index_name:, fields:)
31
+ {
32
+ index: index_name,
33
+ body: {
34
+ query: {
35
+ multi_match: {
36
+ query: query,
37
+ fields: fields
38
+ }
39
+ }
40
+ }
41
+ }
42
+ end
43
+ end
44
+ end
@@ -0,0 +1,24 @@
1
+ # frozen_string_literal: true
2
+
3
+ module ElasticsearchHermes
4
+ module Result
5
+ class Base
6
+ attr_reader :took, :timed_out, :shards, :hits
7
+
8
+ def initialize(took:, timed_out:, hits:, _shards:)
9
+ @took = took
10
+ @timed_out = timed_out
11
+ @shards = _shards
12
+ @hits = hits
13
+ end
14
+
15
+ def ids
16
+ @ids ||= @hits['hits'].map { |hit| hit['_id'] }
17
+ end
18
+
19
+ def models
20
+ @models ||= ''
21
+ end
22
+ end
23
+ end
24
+ end
File without changes
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module ElasticsearchHermes
4
- VERSION = '0.0.4.2'
4
+ VERSION = '0.0.4.3'
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: elasticsearch_hermes
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.4.2
4
+ version: 0.0.4.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ronald Ekambi
@@ -43,7 +43,10 @@ files:
43
43
  - lib/elasticsearch_hermes/hook.rb
44
44
  - lib/elasticsearch_hermes/index.rb
45
45
  - lib/elasticsearch_hermes/logger.rb
46
+ - lib/elasticsearch_hermes/query.rb
46
47
  - lib/elasticsearch_hermes/railtie.rb
48
+ - lib/elasticsearch_hermes/result/base.rb
49
+ - lib/elasticsearch_hermes/result/hit.rb
47
50
  - lib/elasticsearch_hermes/version.rb
48
51
  homepage: https://github.com/roncodingenthusiast/elasticsearch_hermes
49
52
  licenses: