elastic_search_framework 0.2.4 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: ee603bb47fff26f6926e863c60ad6e6b39f5cee7
4
- data.tar.gz: 042fbf4d7ca23fbe390a4890626495b1c42a13f6
2
+ SHA256:
3
+ metadata.gz: 0e38cb0d02951b7d4b3d76e1eefdd6f6f1aece78b8155d745c8faff954e0708f
4
+ data.tar.gz: ffb17d5fdd74a9cb9098ecebba7073b993b405573ae61ac661cbb2c2b2006075
5
5
  SHA512:
6
- metadata.gz: 100cf5a57c6d45c273c046c64bcb00927922e89d62cdd71f1f611aef58091523f90920696a2d83e01bdcbe4e7dc3cc8aa872559e6791a5823831e43afaff695f
7
- data.tar.gz: 9e8a480bdf3fc309d1105348ef19c0945068cd5ab9c67e4c5530887fa1202b2c7e96c4f2d06c39070bcd25fbee882b67f91af541b9d35b10b4e8e9de0c524837
6
+ metadata.gz: 0f73d01a913e2e858466675bf774e36d41dc87c4060e2bc97f34b0efeadb0fe06d8f43ab0c87a20dccd48248f524d9dc5f6a4e693ed45af83e3f2882e50014e9
7
+ data.tar.gz: 12128e76fa8ffaac2177722fe95250e9a520334460da0a3643839b01908a535c238f1a503cb2ff3408760435bf392668bcb557a08bc2d54d23f5d4976e296a98
@@ -18,7 +18,7 @@ module ElasticSearchFramework
18
18
  end
19
19
  end
20
20
 
21
- def mapping(name:, field:, type:, analyser:)
21
+ def mapping(name:, field:, type:, index:)
22
22
 
23
23
  unless instance_variable_defined?(:@elastic_search_index_mappings)
24
24
  instance_variable_set(:@elastic_search_index_mappings, {})
@@ -30,7 +30,7 @@ module ElasticSearchFramework
30
30
  mappings[name] = {}
31
31
  end
32
32
 
33
- mappings[name][field] = { type: type, analyser: analyser}
33
+ mappings[name][field] = { type: type, index: index}
34
34
 
35
35
  instance_variable_set(:@elastic_search_index_mappings, mappings)
36
36
 
@@ -58,6 +58,7 @@ module ElasticSearchFramework
58
58
 
59
59
  request = Net::HTTP::Put.new(uri.request_uri)
60
60
  request.body = JSON.dump(payload)
61
+ request.content_type = 'application/json'
61
62
 
62
63
  response = repository.with_client do |client|
63
64
  client.request(request)
@@ -126,7 +127,7 @@ module ElasticSearchFramework
126
127
  mappings[name].keys.each do |field|
127
128
  payload[:mappings][name][:properties][field] = {
128
129
  type: mappings[name][field][:type],
129
- index: mappings[name][field][:analyser]
130
+ index: mappings[name][field][:index]
130
131
  }
131
132
  end
132
133
  end
@@ -7,6 +7,7 @@ module ElasticSearchFramework
7
7
 
8
8
  request = Net::HTTP::Put.new(uri.request_uri)
9
9
  request.body = JSON.dump(hash)
10
+ request.content_type = 'application/json'
10
11
 
11
12
  response = with_client do |client|
12
13
  client.request(request)
@@ -1,3 +1,3 @@
1
1
  module ElasticSearchFramework
2
- VERSION = '0.2.4'
2
+ VERSION = '1.0.0'
3
3
  end
@@ -1,6 +1,8 @@
1
+ require 'connection_pool'
2
+ require 'date'
1
3
  require 'hash_kit'
2
4
  require 'json'
3
- require 'connection_pool'
5
+ require 'net/http'
4
6
  require_relative 'elastic_search_framework/version'
5
7
  require_relative 'elastic_search_framework/logger'
6
8
  require_relative 'elastic_search_framework/exceptions'
@@ -8,8 +10,6 @@ require_relative 'elastic_search_framework/repository'
8
10
  require_relative 'elastic_search_framework/index'
9
11
  require_relative 'elastic_search_framework/query'
10
12
 
11
- require 'date'
12
-
13
13
  module ElasticSearchFramework
14
14
  def self.namespace=(value)
15
15
  @namespace = value
@@ -3,7 +3,7 @@ class ExampleIndex
3
3
 
4
4
  index name: 'example_index'
5
5
 
6
- mapping name: 'default', field: :name, type: :string, analyser: :not_analyzed
6
+ mapping name: 'default', field: :name, type: :keyword, index: true
7
7
 
8
8
  end
9
9
 
@@ -14,7 +14,7 @@ class ExampleIndexWithId
14
14
 
15
15
  id :number
16
16
 
17
- mapping name: 'default', field: :name, type: :string, analyser: :not_analyzed
17
+ mapping name: 'default', field: :name, type: :keyword, index: true
18
18
 
19
19
  end
20
20
 
@@ -23,7 +23,7 @@ class ExampleIndexWithShard
23
23
 
24
24
  index name: 'example_index', shards: 1
25
25
 
26
- mapping name: 'default', field: :name, type: :string, analyser: :not_analyzed
26
+ mapping name: 'default', field: :name, type: :keyword, index: true
27
27
 
28
28
  end
29
29
 
data/spec/index_spec.rb CHANGED
@@ -27,8 +27,8 @@ RSpec.describe ElasticSearchFramework::Index do
27
27
  mappings = ExampleIndex.mappings
28
28
  expect(mappings).to be_a(Hash)
29
29
  expect(mappings.length).to eq 1
30
- expect(mappings['default'][:name][:type]).to eq :string
31
- expect(mappings['default'][:name][:analyser]).to eq :not_analyzed
30
+ expect(mappings['default'][:name][:type]).to eq :keyword
31
+ expect(mappings['default'][:name][:index]).to eq true
32
32
  end
33
33
  end
34
34
 
data/spec/spec_helper.rb CHANGED
@@ -1,15 +1,16 @@
1
- require "rubygems"
2
- require "bundler"
3
- require 'elastic_search_framework'
4
- require_relative '../spec/test_item.rb'
5
- require_relative '../spec/example_index'
6
- require 'pry'
1
+ require 'rubygems'
2
+ require 'bundler'
7
3
 
8
4
  require 'simplecov'
9
5
  SimpleCov.start do
10
6
  add_filter '/spec/'
11
7
  end
12
8
 
9
+ require 'elastic_search_framework'
10
+ require_relative '../spec/test_item.rb'
11
+ require_relative '../spec/example_index'
12
+ require 'pry'
13
+
13
14
  RSpec.configure do |config|
14
15
  config.expect_with :rspec do |expectations|
15
16
  expectations.include_chain_clauses_in_custom_matcher_descriptions = true
@@ -23,5 +24,5 @@ RSpec.configure do |config|
23
24
  end
24
25
 
25
26
  ElasticSearchFramework.logger.level = Logger::ERROR
26
- ElasticSearchFramework.host = 'http://elasticsearch'
27
- ElasticSearchFramework.port = 9200
27
+ ElasticSearchFramework.host = ENV.fetch('ELASTIC_SEARCH_HOST', 'http://elasticsearch')
28
+ ElasticSearchFramework.port = ENV.fetch('ELASTIC_SEARCH_PORT', '9200')
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: elastic_search_framework
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.4
4
+ version: 1.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - vaughanbrittonsage
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2018-03-07 00:00:00.000000000 Z
11
+ date: 2018-04-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -110,7 +110,7 @@ dependencies:
110
110
  version: '0'
111
111
  description: A lightweight framework to for working with elastic search.
112
112
  email:
113
- - vaughanbritton@gmail.com
113
+ - vaughan.britton@sage.com
114
114
  executables: []
115
115
  extensions: []
116
116
  extra_rdoc_files: []
@@ -149,7 +149,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
149
149
  version: '0'
150
150
  requirements: []
151
151
  rubyforge_project:
152
- rubygems_version: 2.5.2.1
152
+ rubygems_version: 2.7.6
153
153
  signing_key:
154
154
  specification_version: 4
155
155
  summary: A lightweight framework to for working with elastic search.