dm-lucene-adapter 0.1.1-java → 0.1.2-java
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.
@@ -27,9 +27,10 @@ module DataMapper
|
|
27
27
|
# @api semipublic
|
28
28
|
def create(resources)
|
29
29
|
count = 0
|
30
|
+
reader = lucene(resources.first.model).create_reader
|
30
31
|
indexer = lucene(resources.first.model).create_indexer
|
31
32
|
resources.each do |resource|
|
32
|
-
resource.id =
|
33
|
+
resource.id = reader.next_id
|
33
34
|
map = {}
|
34
35
|
resource.attributes.each { |k,v| map[k.to_s] = v.to_s}
|
35
36
|
indexer.index(map)
|
@@ -38,6 +39,7 @@ module DataMapper
|
|
38
39
|
count
|
39
40
|
ensure
|
40
41
|
indexer.close if indexer
|
42
|
+
reader.close if reader
|
41
43
|
end
|
42
44
|
|
43
45
|
# @param [Query] query
|
@@ -116,7 +118,7 @@ module DataMapper
|
|
116
118
|
ops.each do |comp|
|
117
119
|
case comp.slug
|
118
120
|
when :like
|
119
|
-
comp.value.split(/\s
|
121
|
+
comp.value.split(/\s+/).each do |value|
|
120
122
|
lquery += "#{comp.subject.name.to_s}:#{value}"
|
121
123
|
unless comp.value =~ /%|_|\?|\*/
|
122
124
|
lquery += "~"
|
@@ -124,7 +126,9 @@ module DataMapper
|
|
124
126
|
lquery += " #{operator} "
|
125
127
|
end
|
126
128
|
when :eql
|
127
|
-
|
129
|
+
comp.value.to_s.split(/\s+/).each do |value|
|
130
|
+
lquery += "#{comp.subject.name.to_s}:\"#{value}\" #{operator} "
|
131
|
+
end
|
128
132
|
when :not
|
129
133
|
if lquery.size == 0
|
130
134
|
lquery = "NOT "
|
@@ -27,8 +27,10 @@ describe DataMapper::Adapters::LuceneAdapter do
|
|
27
27
|
end
|
28
28
|
b = Book.all
|
29
29
|
size.should == b.size + 2
|
30
|
-
book = Book.create(:author => "kristian", :title => "me and the corner")
|
31
|
-
id.should
|
30
|
+
book = Book.create(:author => "kristian 2", :title => "me and the corner 2")
|
31
|
+
id.should == book.id
|
32
|
+
b = Book.all
|
33
|
+
size.should == b.size + 1
|
32
34
|
end
|
33
35
|
|
34
36
|
it 'should read a single' do
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: dm-lucene-adapter
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.2
|
5
5
|
platform: java
|
6
6
|
authors:
|
7
7
|
- Kristian Meier
|
@@ -9,11 +9,40 @@ autorequire:
|
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
11
|
|
12
|
-
date:
|
12
|
+
date: 2010-01-28 00:00:00 +05:30
|
13
13
|
default_executable:
|
14
|
-
dependencies:
|
15
|
-
|
16
|
-
|
14
|
+
dependencies:
|
15
|
+
- !ruby/object:Gem::Dependency
|
16
|
+
name: extlib
|
17
|
+
type: :runtime
|
18
|
+
version_requirement:
|
19
|
+
version_requirements: !ruby/object:Gem::Requirement
|
20
|
+
requirements:
|
21
|
+
- - "="
|
22
|
+
- !ruby/object:Gem::Version
|
23
|
+
version: 0.9.14
|
24
|
+
version:
|
25
|
+
- !ruby/object:Gem::Dependency
|
26
|
+
name: addressable
|
27
|
+
type: :runtime
|
28
|
+
version_requirement:
|
29
|
+
version_requirements: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - "="
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: 2.1.1
|
34
|
+
version:
|
35
|
+
- !ruby/object:Gem::Dependency
|
36
|
+
name: dm-core
|
37
|
+
type: :runtime
|
38
|
+
version_requirement:
|
39
|
+
version_requirements: !ruby/object:Gem::Requirement
|
40
|
+
requirements:
|
41
|
+
- - "="
|
42
|
+
- !ruby/object:Gem::Version
|
43
|
+
version: 0.10.2
|
44
|
+
version:
|
45
|
+
description: datamapper adapter for search index lucene from apache
|
17
46
|
email:
|
18
47
|
- m.kristian@web.de
|
19
48
|
executables: []
|
@@ -57,6 +86,6 @@ rubyforge_project:
|
|
57
86
|
rubygems_version: 1.3.5
|
58
87
|
signing_key:
|
59
88
|
specification_version: 3
|
60
|
-
summary:
|
89
|
+
summary: datamapper adapter for lucene
|
61
90
|
test_files: []
|
62
91
|
|