discovery-indexer 0.7.6 → 0.8
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 +4 -4
- data/lib/mapper/general_mapper.rb +11 -0
- data/lib/version.rb +1 -1
- data/lib/writer/solr_client.rb +7 -1
- data/lib/writer/solr_writer.rb +3 -3
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8dd4ef09a9e30c4f6824aea1a29a67de478390da
|
4
|
+
data.tar.gz: 672301a42583512cb75dcbcf13e9525067bcbcdb
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 06e93b070f38d261e0215ccbf1124f3b8086a3447c5fc1b3efa2b8489024eb20127589ca0d68703463aff8ae8bcc9cf6e4cdbae2f17357027c4a69c98d973caf
|
7
|
+
data.tar.gz: a2e613e691c61a8577f435c6dcc2c54b329a3912ac37230388bc886997605e3e22f4b0ac7c3935bff788aac4108882a95433bf4525a967586199ddbd88f70749
|
@@ -20,13 +20,17 @@ module DiscoveryIndexer
|
|
20
20
|
def convert_to_solr_doc()
|
21
21
|
solr_doc = {}
|
22
22
|
solr_doc[:id] = @druid
|
23
|
+
solr_doc[:druid] = @druid
|
23
24
|
solr_doc.update mods_to_title_fields
|
24
25
|
solr_doc.update mods_to_author_fields
|
25
26
|
solr_doc.update mods_to_subject_search_fields
|
26
27
|
solr_doc.update mods_to_publication_fields
|
27
28
|
solr_doc.update mods_to_pub_date
|
28
29
|
solr_doc.update mods_to_others
|
30
|
+
solr_doc.update hard_coded_fields
|
29
31
|
|
32
|
+
solr_doc[:collection] = @collection_names.nil? ? [] : @collection_names.keys
|
33
|
+
solr_doc[:modsxml] = @modsxml.to_xml
|
30
34
|
solr_doc[:all_search] = @modsxml.text.gsub(/\s+/, ' ')
|
31
35
|
return solr_doc
|
32
36
|
end
|
@@ -116,6 +120,13 @@ module DiscoveryIndexer
|
|
116
120
|
return doc_hash
|
117
121
|
end
|
118
122
|
|
123
|
+
def hard_coded_fields
|
124
|
+
doc_hash = {
|
125
|
+
:url_fulltext => "http://purl.stanford.edu/#{@druid}",
|
126
|
+
:access_facet => 'Online',
|
127
|
+
:building_facet => 'Stanford Digital Repository',
|
128
|
+
}
|
129
|
+
end
|
119
130
|
# select one or more format values from the controlled vocabulary here:
|
120
131
|
# http://searchworks-solr-lb.stanford.edu:8983/solr/select?facet.field=format&rows=0&facet.sort=index
|
121
132
|
# via stanford-mods gem
|
data/lib/version.rb
CHANGED
data/lib/writer/solr_client.rb
CHANGED
@@ -72,7 +72,13 @@ module DiscoveryIndexer
|
|
72
72
|
def self.update_solr_doc(id,solr_doc,solr_connector)
|
73
73
|
# update_solr_doc can't used RSolr because updating hash doc is not supported
|
74
74
|
# so we need to build the json input manually
|
75
|
-
|
75
|
+
solr_url = solr_connector.options[:url]
|
76
|
+
if solr_url.end_with?("/") then
|
77
|
+
url="#{solr_connector.options[:url]}update?commit=true"
|
78
|
+
else
|
79
|
+
url="#{solr_connector.options[:url]}/update?commit=true"
|
80
|
+
end
|
81
|
+
|
76
82
|
params="[{\"id\":\"#{id}\","
|
77
83
|
solr_doc.each do |field_name,new_values|
|
78
84
|
unless field_name == :id
|
data/lib/writer/solr_writer.rb
CHANGED
@@ -35,14 +35,14 @@ module DiscoveryIndexer
|
|
35
35
|
def solr_index_client(id, index_doc, targets)
|
36
36
|
targets.each do |solr_target|
|
37
37
|
solr_connector = get_connector_for_target(solr_target)
|
38
|
-
|
38
|
+
SolrClient.add(id, index_doc, solr_connector) unless solr_connector.nil?
|
39
39
|
end
|
40
40
|
end
|
41
41
|
|
42
42
|
def solr_delete_client(id, targets)
|
43
43
|
targets.each do |solr_target|
|
44
|
-
solr_connector = get_connector_for_target(solr_target)
|
45
|
-
SolrClient.delete(id, solr_connector)
|
44
|
+
solr_connector = get_connector_for_target(solr_target)
|
45
|
+
SolrClient.delete(id, solr_connector) unless solr_connector.nil?
|
46
46
|
end
|
47
47
|
end
|
48
48
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: discovery-indexer
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: '0.8'
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ahmed AlSum
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-04-
|
11
|
+
date: 2015-04-08 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: nokogiri
|