ej 0.1.12 → 0.2.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
2
  SHA1:
3
- metadata.gz: ee1f79efd243a83e80d9b4ace0f58213ceee0c76
4
- data.tar.gz: bc86ffef97ad3a387c332a735437c661f6825970
3
+ metadata.gz: 1c2fa0d4e1e6e487bad78a7aca5dd1835cfb2081
4
+ data.tar.gz: 13aec98633b2fda985ae14ccfa320c9f28c73223
5
5
  SHA512:
6
- metadata.gz: 4a1074107c6d568c830ee1153d5adf0b294bcaf7c408ee45117cd4a05b0a09504aa4d362b9f88d6b4bab4e916eb8d29687bbd327681ce8e258b94002cf144ee9
7
- data.tar.gz: 5b627b9a60eb8cc01194795bb63aa99a9e28c03151b3964288a1bf18f763ae8f418f18706dbb8c95815e33598ca2b75bcd9731058d2a81bf2749fb29f814a2a6
6
+ metadata.gz: 683b1f431d24d4adc5028bf5bda1056067c9a4d9bb4367506430a6b5a61af3f22c03107d28404bdb44c3db7d615baa697f3b8513bf39c48c32b9897d387dc229
7
+ data.tar.gz: 638fb4221ed2c5c743a13f950f7dadc1bcd24582e168c9d16a9002b192123d6d504e15bb7591753b8cf924ccb5171cbde5d874c6e7ae71bbc011c1c9aa2b97f0
@@ -148,8 +148,8 @@ module Ej
148
148
  end
149
149
 
150
150
  def copy(source, dest, query, per_size, scroll, dest_index, slice_max)
151
- source_client = Elasticsearch::Client.new hosts: source
152
- dest_client = Elasticsearch::Client.new hosts: dest
151
+ source_client = Elasticsearch::Client.new transport: Util.get_transport(Util.parse_hosts(source))
152
+ dest_client = Elasticsearch::Client.new transport: Util.get_transport(Util.parse_hosts(dest))
153
153
 
154
154
  parallel_array = slice_max ? slice_max.times.to_a : [0]
155
155
  Parallel.map(parallel_array, :in_processes=>parallel_array.size) do |slice_id|
@@ -19,5 +19,33 @@ module Ej
19
19
  def self.get_sources(results)
20
20
  results.hits.hits.map { |result| result._source }
21
21
  end
22
+
23
+ def self.get_transport(hosts)
24
+ transport = ::Elasticsearch::Transport::Transport::HTTP::Faraday.new(
25
+ {
26
+ hosts: hosts,
27
+ options: {
28
+ reload_connections: true,
29
+ reload_on_failure: false,
30
+ retry_on_failure: 5,
31
+ transport_options: {
32
+ headers: { 'Content-Type' => 'application/json' },
33
+ request: { timeout: 300 }
34
+ }
35
+ }
36
+ }
37
+ )
38
+ return transport
39
+ end
40
+
41
+ def self.parse_hosts(host_string, user = nil, password = nil)
42
+ host, port = (host_string || DEFAULT_HOST), DEFAULT_PORT
43
+ if !host_string.nil? && host_string.include?(":")
44
+ host, port = host_string.split(':')
45
+ end
46
+
47
+ hosts = [{ host: host, port: port.to_i, user: user, password: password }]
48
+ return hosts
49
+ end
22
50
  end
23
51
  end
@@ -12,26 +12,8 @@ module Ej
12
12
  end
13
13
 
14
14
  def get_client(host_string, index, user, password)
15
- host, port = (host_string || DEFAULT_HOST), DEFAULT_PORT
16
- if !host_string.nil? && host_string.include?(":")
17
- host, port = host_string.split(':')
18
- end
19
-
20
- hosts = [{ host: host, port: port, user: user, password: password }]
21
- transport = ::Elasticsearch::Transport::Transport::HTTP::Faraday.new(
22
- {
23
- hosts: hosts,
24
- options: {
25
- reload_connections: true,
26
- reload_on_failure: false,
27
- retry_on_failure: 5,
28
- transport_options: {
29
- request: { timeout: 300 }
30
- }
31
- }
32
- }
33
- )
34
- ::Elasticsearch::Client.new transport: transport, index: index, logger: @logger
15
+ hosts = Util.parse_hosts(host_string, user, password)
16
+ ::Elasticsearch::Client.new transport: Util.get_transport(hosts), index: index, logger: @logger
35
17
  end
36
18
  end
37
19
  end
@@ -1,3 +1,3 @@
1
1
  module Ej
2
- VERSION = '0.1.12'
2
+ VERSION = '0.2.0'
3
3
  end
@@ -31,6 +31,13 @@ describe Ej::Util do
31
31
  Util.generate_id('%s_%s', {"id" => 1, "name" => "rspec"}, ['id', 'name']).should == '1_rspec'
32
32
  end
33
33
 
34
+ it "parse hosts" do
35
+ Util.parse_hosts(nil).should == [{ host: 'localhost', port: 9200, user: nil, password: nil }]
36
+ Util.parse_hosts("localhost").should == [{ host: 'localhost', port: 9200, user: nil, password: nil }]
37
+ Util.parse_hosts("localhost:9100").should == [{ host: 'localhost', port: 9100, user: nil, password: nil }]
38
+ Util.parse_hosts("localhost:9100", 'user', 'password').should == [{ host: 'localhost', port: 9100, user: 'user', password: 'password' }]
39
+ end
40
+
34
41
  after do
35
42
  end
36
43
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ej
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.12
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - toyama0919
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-10-11 00:00:00.000000000 Z
11
+ date: 2017-11-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler