elastics-models 1.0.10 → 1.1.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.
- data/README.md +1 -1
- data/VERSION +1 -1
- data/elastics-models.gemspec +3 -2
- data/lib/elastics/model_indexer.rb +12 -1
- data/lib/elastics/model_tasks.rb +1 -14
- metadata +8 -8
data/README.md
CHANGED
@@ -29,4 +29,4 @@ Special thanks for their sponsorship to [Escalate Media](http://www.escalatemedi
|
|
29
29
|
## Copyright
|
30
30
|
|
31
31
|
Copyright (c) 2012-2013 by [Domizio Demichelis](mailto://dd.nexus@gmail.com)<br>
|
32
|
-
See [LICENSE](https://github.com/elastics/elastics/blob/master/elastics
|
32
|
+
See [LICENSE](https://github.com/elastics/elastics/blob/master/elastics/LICENSE) for details.
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
1.0
|
1
|
+
1.1.0
|
data/elastics-models.gemspec
CHANGED
@@ -1,5 +1,6 @@
|
|
1
1
|
require 'date'
|
2
|
-
|
2
|
+
version_path = %w[../VERSION ../../VERSION].detect{|v| File.exist?(File.expand_path(v, __FILE__))}
|
3
|
+
version = File.read(File.expand_path(version_path, __FILE__)).strip
|
3
4
|
|
4
5
|
Gem::Specification.new do |s|
|
5
6
|
s.name = 'elastics-models'
|
@@ -8,7 +9,7 @@ Gem::Specification.new do |s|
|
|
8
9
|
s.homepage = 'http://elastics.github.io/elastics'
|
9
10
|
s.authors = ["Domizio Demichelis"]
|
10
11
|
s.email = 'dd.nexus@gmail.com'
|
11
|
-
s.files = `git ls-files -z`.split("\0")
|
12
|
+
s.files = `git ls-files -z`.split("\0") + %w[VERSION LICENSE]
|
12
13
|
s.version = version
|
13
14
|
s.date = Date.today.to_s
|
14
15
|
s.required_rubygems_version = ">= 1.3.6"
|
@@ -7,6 +7,18 @@ module Elastics
|
|
7
7
|
@elastics.extend(ClassProxy::ModelSyncer)
|
8
8
|
@elastics.extend(ClassProxy::ModelIndexer).init
|
9
9
|
def self.elastics; @elastics end
|
10
|
+
case
|
11
|
+
when respond_to?(:find_in_batches)
|
12
|
+
def self.elastics_in_batches(options={}, &block)
|
13
|
+
find_in_batches(options, &block)
|
14
|
+
end
|
15
|
+
when defined?(Mongoid::Document) && include?(Mongoid::Document)
|
16
|
+
def self.elastics_in_batches(options={}, &block)
|
17
|
+
0.step(count, options[:batch_size]) do |offset|
|
18
|
+
block.call limit(options[:batch_size]).skip(offset).to_a
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
10
22
|
end
|
11
23
|
end
|
12
24
|
|
@@ -23,5 +35,4 @@ module Elastics
|
|
23
35
|
end
|
24
36
|
|
25
37
|
end
|
26
|
-
|
27
38
|
end
|
data/lib/elastics/model_tasks.rb
CHANGED
@@ -76,22 +76,9 @@ module Elastics
|
|
76
76
|
Prompter.say_ok "#{index} index created" if options[:verbose]
|
77
77
|
end
|
78
78
|
|
79
|
-
if defined?(Mongoid::Document) && model.include?(Mongoid::Document)
|
80
|
-
def model.find_in_batches(options={})
|
81
|
-
0.step(count, options[:batch_size]) do |offset|
|
82
|
-
yield limit(options[:batch_size]).skip(offset).to_a
|
83
|
-
end
|
84
|
-
end
|
85
|
-
end
|
86
|
-
|
87
|
-
unless model.respond_to?(:find_in_batches)
|
88
|
-
Conf.logger.error "Model #{model} does not respond to :find_in_batches. Skipped."
|
89
|
-
next
|
90
|
-
end
|
91
|
-
|
92
79
|
pbar = ProgBar.new(model.count, options[:batch_size], "Model #{model}: ") if options[:verbose]
|
93
80
|
|
94
|
-
model.
|
81
|
+
model.elastics_in_batches(:batch_size => options[:batch_size]) do |batch|
|
95
82
|
result = Elastics.post_bulk_collection(batch, options[:import_options]) || next
|
96
83
|
pbar.process_result(result, batch.size) if options[:verbose]
|
97
84
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: elastics-models
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0
|
4
|
+
version: 1.1.0
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2013-09-
|
12
|
+
date: 2013-09-13 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: elastics-client
|
@@ -18,7 +18,7 @@ dependencies:
|
|
18
18
|
requirements:
|
19
19
|
- - '='
|
20
20
|
- !ruby/object:Gem::Version
|
21
|
-
version: 1.0
|
21
|
+
version: 1.1.0
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
24
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -26,7 +26,7 @@ dependencies:
|
|
26
26
|
requirements:
|
27
27
|
- - '='
|
28
28
|
- !ruby/object:Gem::Version
|
29
|
-
version: 1.0
|
29
|
+
version: 1.1.0
|
30
30
|
- !ruby/object:Gem::Dependency
|
31
31
|
name: elastics-scopes
|
32
32
|
requirement: !ruby/object:Gem::Requirement
|
@@ -34,7 +34,7 @@ dependencies:
|
|
34
34
|
requirements:
|
35
35
|
- - '='
|
36
36
|
- !ruby/object:Gem::Version
|
37
|
-
version: 1.0
|
37
|
+
version: 1.1.0
|
38
38
|
type: :runtime
|
39
39
|
prerelease: false
|
40
40
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -42,7 +42,7 @@ dependencies:
|
|
42
42
|
requirements:
|
43
43
|
- - '='
|
44
44
|
- !ruby/object:Gem::Version
|
45
|
-
version: 1.0
|
45
|
+
version: 1.1.0
|
46
46
|
- !ruby/object:Gem::Dependency
|
47
47
|
name: active_attr
|
48
48
|
requirement: !ruby/object:Gem::Requirement
|
@@ -67,9 +67,7 @@ executables: []
|
|
67
67
|
extensions: []
|
68
68
|
extra_rdoc_files: []
|
69
69
|
files:
|
70
|
-
- LICENSE
|
71
70
|
- README.md
|
72
|
-
- VERSION
|
73
71
|
- elastics-models.gemspec
|
74
72
|
- lib/elastics-models.rb
|
75
73
|
- lib/elastics/active_model.rb
|
@@ -93,6 +91,8 @@ files:
|
|
93
91
|
- lib/elastics/result/search_loader.rb
|
94
92
|
- lib/elastics/struct/mergeable.rb
|
95
93
|
- lib/tasks.rake
|
94
|
+
- VERSION
|
95
|
+
- LICENSE
|
96
96
|
homepage: http://elastics.github.io/elastics
|
97
97
|
licenses:
|
98
98
|
- MIT
|