solrizer 1.1.0 → 1.1.1

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/Gemfile.lock CHANGED
@@ -1,48 +1,51 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ solrizer (1.1.1)
5
+ daemons
6
+ mediashelf-loggable
7
+ nokogiri
8
+ om (>= 1.4.0)
9
+ stomp
10
+ xml-simple
11
+
1
12
  GEM
2
13
  remote: http://rubygems.org/
3
14
  specs:
4
- RedCloth (4.2.7)
5
- columnize (0.3.2)
6
- daemons (1.1.2)
7
- git (1.2.5)
8
- jeweler (1.5.2)
9
- bundler (~> 1.0.0)
10
- git (>= 1.2.5)
11
- rake
12
- linecache (0.43)
13
- mediashelf-loggable (0.4.2)
14
- mocha (0.9.12)
15
- nokogiri (1.4.4)
16
- om (1.2.2)
15
+ RedCloth (4.2.8)
16
+ columnize (0.3.4)
17
+ daemons (1.1.4)
18
+ linecache (0.46)
19
+ rbx-require-relative (> 0.0.4)
20
+ mediashelf-loggable (0.4.7)
21
+ metaclass (0.0.1)
22
+ mocha (0.10.0)
23
+ metaclass (~> 0.0.1)
24
+ nokogiri (1.5.0)
25
+ om (1.4.0)
26
+ mediashelf-loggable
17
27
  nokogiri (>= 1.4.2)
18
- om
19
- rake (0.8.7)
20
- rcov (0.9.9)
21
- rspec (1.3.1)
28
+ rbx-require-relative (0.0.5)
29
+ rcov (0.9.10)
30
+ rspec (1.3.2)
22
31
  ruby-debug (0.10.4)
23
32
  columnize (>= 0.1)
24
33
  ruby-debug-base (~> 0.10.4.0)
25
34
  ruby-debug-base (0.10.4)
26
35
  linecache (>= 0.3)
27
- stomp (1.1.8)
28
- xml-simple (1.0.15)
29
- yard (0.6.8)
36
+ stomp (1.1.9)
37
+ xml-simple (1.1.0)
38
+ yard (0.7.2)
30
39
 
31
40
  PLATFORMS
32
41
  ruby
33
42
 
34
43
  DEPENDENCIES
35
44
  RedCloth
36
- daemons
37
- jeweler
38
- mediashelf-loggable
39
45
  mocha
40
- nokogiri
41
- om (>= 1.0.0)
42
46
  rcov
43
47
  rspec (< 2.0.0)
44
48
  ruby-debug
45
49
  ruby-debug-base
46
- stomp
47
- xml-simple
50
+ solrizer!
48
51
  yard
data/History.txt CHANGED
@@ -1,3 +1,10 @@
1
+ h2. 1.1.1
2
+
3
+ BUG: Trying to index the children of proxy terms (can't access them in OM). Added a check to make sure it doesn't do this.
4
+ BUG: Not responding to messages of type: "modifyDatastreamByReference"
5
+ BUG: Not logging unavailable message types
6
+
7
+
1
8
  h2. 1.0.3
2
9
 
3
10
  BUG: Extractor.format_field_values was choking when value was nil
@@ -31,4 +38,4 @@ Updated FieldNameMapper to use new FieldMapper
31
38
 
32
39
  h2. 0.1.2
33
40
 
34
- Minor: switched active-fedora gem requirement to >= 1.1.5 instead of = 1.1.5 (was breaking apps that use later versions of active-fedora)
41
+ Minor: switched active-fedora gem requirement to >= 1.1.5 instead of = 1.1.5 (was breaking apps that use later versions of active-fedora)
data/bin/solrizer CHANGED
@@ -61,7 +61,7 @@ if options[:hydra_home]
61
61
 
62
62
  puts "app loaded"
63
63
  else
64
- "The --hydra_home PATH option is mandatory. Please provide the path to the root of a valid Hydra instance."
64
+ $stderr.puts "The --hydra_home PATH option is mandatory. Please provide the path to the root of a valid Hydra instance."
65
65
  exit 1
66
66
  end
67
67
 
@@ -89,11 +89,13 @@ begin
89
89
 
90
90
  puts @msg.headers.inspect
91
91
  puts "\nPID: #{@msg.headers["pid"]}\n"
92
- if ["addDatastream", "addRelationship","ingest","modifyDatastream","modifyObject","purgeDatastream","urgeRelationship"].include? method
92
+ if ["addDatastream", "addRelationship","ingest","modifyDatastream","modifyDatastreamByReference","modifyObject","purgeDatastream","purgeRelationship"].include? method
93
93
  solrizer = Solrizer::Fedora::Solrizer.new
94
94
  solrizer.solrize @msg.headers["pid"]
95
95
  elsif method == "purgeObject"
96
96
  ActiveFedora::SolrService.instance.conn.delete(pid)
97
+ else
98
+ $stderr.puts "Unknown Method: #{method}"
97
99
  end
98
100
  puts "updated solr index for #{@msg.headers["pid"]}\n"
99
101
  @conn.ack @msg.headers["message-id"]
@@ -1,3 +1,3 @@
1
1
  module Solrizer
2
- VERSION = "1.1.0"
2
+ VERSION = "1.1.1"
3
3
  end
@@ -31,21 +31,16 @@ module Solrizer::XML::TerminologyBasedSolrizer
31
31
  parents = opts.fetch(:parents, [])
32
32
 
33
33
  term_pointer = parents+[term.name]
34
-
35
- # term = terminology.retrieve_term(term_pointer)
36
-
37
- # prep children hash
38
- # child_accessors = accessor_info.fetch(:children, {})
39
- # xpath = term.xpath_for(*term_pointer)
40
34
  nodeset = doc.find_by_terms(*term_pointer)
41
35
 
42
36
  nodeset.each do |node|
43
37
  # create solr fields
44
38
 
45
39
  self.solrize_node(node, doc, term_pointer, term, solr_doc, field_mapper)
46
- term.children.each_pair do |child_term_name, child_term|
47
- doc.solrize_term(child_term, solr_doc, field_mapper, opts={:parents=>parents+[{term.name=>nodeset.index(node)}]})
48
- # self.solrize_term(doc, child_term_name, child_term, opts={:solr_doc=>solr_doc, :parents=>parents+[{accessor_name=>nodeset.index(node)}] })
40
+ unless term.kind_of? OM::XML::NamedTermProxy
41
+ term.children.each_pair do |child_term_name, child_term|
42
+ doc.solrize_term(child_term, solr_doc, field_mapper, opts={:parents=>parents+[{term.name=>nodeset.index(node)}]})
43
+ end
49
44
  end
50
45
  end
51
46
  solr_doc
data/solrizer.gemspec CHANGED
@@ -13,7 +13,7 @@ Gem::Specification.new do |s|
13
13
  s.description = %q{Use solrizer to populate solr indexes from Fedora repository content or from other sources. You can run solrizer from within your apps, using the provided rake tasks, or as a JMS listener}
14
14
 
15
15
  s.add_dependency "nokogiri"
16
- s.add_dependency "om", ">=1.0.0"
16
+ s.add_dependency "om", ">=1.4.0"
17
17
  s.add_dependency "xml-simple"
18
18
  s.add_dependency "mediashelf-loggable"
19
19
  s.add_dependency "stomp"
@@ -3,7 +3,7 @@
3
3
 
4
4
  <titleInfo>
5
5
  <nonSort>THE</nonSort>
6
- <title>ARTICLE TITLE HYDRANGEA ARTICLE 1</title>
6
+ <title xml:lang="eng">ARTICLE TITLE HYDRANGEA ARTICLE 1</title>
7
7
  <subTitle>SUBTITLE</subTitle>
8
8
  </titleInfo>
9
9
  <titleInfo lang="finnish">
@@ -87,4 +87,4 @@
87
87
  <accessCondition type="restrictionOnAccess">EMBARGO NOTE</accessCondition>
88
88
  <accessCondition type="use and reproduction">OPEN ACCESS</accessCondition>
89
89
 
90
- </mods>
90
+ </mods>
@@ -80,7 +80,10 @@ describe Solrizer::XML::TerminologyBasedSolrizer do
80
80
 
81
81
  it "should add multiple fields based on index_as" do
82
82
  fake_solr_doc = {}
83
- @mods_article.solrize_term(OM::Samples::ModsArticle.terminology.retrieve_term(:name), fake_solr_doc)
83
+ term = OM::Samples::ModsArticle.terminology.retrieve_term(:name)
84
+ term.children[:namePart].index_as = [:displayable, :facetable]
85
+
86
+ @mods_article.solrize_term(term, fake_solr_doc)
84
87
 
85
88
  expected_names = ["DR.", "FAMILY NAME", "GIVEN NAMES"]
86
89
  %w(_t _display _facet).each do |suffix|
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: solrizer
3
3
  version: !ruby/object:Gem::Version
4
- hash: 19
4
+ hash: 17
5
5
  prerelease:
6
6
  segments:
7
7
  - 1
8
8
  - 1
9
- - 0
10
- version: 1.1.0
9
+ - 1
10
+ version: 1.1.1
11
11
  platform: ruby
12
12
  authors:
13
13
  - Matt Zumwalt
@@ -15,7 +15,8 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2011-06-21 00:00:00 Z
18
+ date: 2011-09-19 00:00:00 -05:00
19
+ default_executable:
19
20
  dependencies:
20
21
  - !ruby/object:Gem::Dependency
21
22
  name: nokogiri
@@ -39,12 +40,12 @@ dependencies:
39
40
  requirements:
40
41
  - - ">="
41
42
  - !ruby/object:Gem::Version
42
- hash: 23
43
+ hash: 7
43
44
  segments:
44
45
  - 1
46
+ - 4
45
47
  - 0
46
- - 0
47
- version: 1.0.0
48
+ version: 1.4.0
48
49
  type: :runtime
49
50
  version_requirements: *id002
50
51
  - !ruby/object:Gem::Dependency
@@ -258,6 +259,7 @@ files:
258
259
  - spec/units/field_name_mapper_spec.rb
259
260
  - spec/units/xml_extractor_spec.rb
260
261
  - spec/units/xml_terminology_based_solrizer_spec.rb
262
+ has_rdoc: true
261
263
  homepage: http://github.com/projecthydra/solrizer
262
264
  licenses: []
263
265
 
@@ -287,7 +289,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
287
289
  requirements: []
288
290
 
289
291
  rubyforge_project:
290
- rubygems_version: 1.7.2
292
+ rubygems_version: 1.6.2
291
293
  signing_key:
292
294
  specification_version: 3
293
295
  summary: A utility for building solr indexes, usually from Fedora repository content.
@@ -306,4 +308,3 @@ test_files:
306
308
  - spec/units/field_name_mapper_spec.rb
307
309
  - spec/units/xml_extractor_spec.rb
308
310
  - spec/units/xml_terminology_based_solrizer_spec.rb
309
- has_rdoc: