dor-services 9.3.0 → 9.4.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
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 496d07425ebd926eb69390d391aae0adfa646e365559152389b6ab75bd8c6f83
|
4
|
+
data.tar.gz: d76539bcc0b0516998343292cde5679071cb4cab7e8e7b6c3838801ac8158dfa
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 70cc7de352cf5b9dfa40da2e54d29c016e3d04f30736a1775cb8c302d0cd77b6f7250d29f13a43ae536c1dabc2e9ae56ab38d1bba6091e92497b32decac965c8
|
7
|
+
data.tar.gz: da9531081f100de69b0cf6af3e5900ff532128245a00c47c4f618d19209c00b1ab7a10d878ad242b57913e9b3c7f2b4db8bb01d66191183bafdcf4a1acc815c9
|
@@ -160,37 +160,6 @@ module Dor
|
|
160
160
|
return_hash
|
161
161
|
end
|
162
162
|
|
163
|
-
def to_solr(solr_doc = {}, *args)
|
164
|
-
solr_doc = super(solr_doc, *args)
|
165
|
-
|
166
|
-
if digital_object.respond_to?(:profile)
|
167
|
-
digital_object.profile.each_pair do |property, value|
|
168
|
-
add_solr_value(solr_doc, property.underscore, value, (property =~ /Date/ ? :date : :symbol), [:stored_searchable])
|
169
|
-
end
|
170
|
-
end
|
171
|
-
|
172
|
-
if sourceId.present?
|
173
|
-
(name, id) = sourceId.split(/:/, 2)
|
174
|
-
add_solr_value(solr_doc, 'dor_id', id, :symbol, [:stored_searchable])
|
175
|
-
add_solr_value(solr_doc, 'identifier', sourceId, :symbol, [:stored_searchable])
|
176
|
-
add_solr_value(solr_doc, 'source_id', sourceId, :symbol, [])
|
177
|
-
end
|
178
|
-
otherId.compact.each do |qid|
|
179
|
-
# this section will solrize barcode and catkey, which live in otherId
|
180
|
-
(name, id) = qid.split(/:/, 2)
|
181
|
-
add_solr_value(solr_doc, 'dor_id', id, :symbol, [:stored_searchable])
|
182
|
-
add_solr_value(solr_doc, 'identifier', qid, :symbol, [:stored_searchable])
|
183
|
-
add_solr_value(solr_doc, "#{name}_id", id, :symbol, [])
|
184
|
-
end
|
185
|
-
|
186
|
-
solr_doc
|
187
|
-
end
|
188
|
-
|
189
|
-
# maintain AF < 8 indexing behavior
|
190
|
-
def prefix
|
191
|
-
''
|
192
|
-
end
|
193
|
-
|
194
163
|
private
|
195
164
|
|
196
165
|
# Convert one release element into a Hash
|
@@ -144,73 +144,6 @@ module Dor
|
|
144
144
|
@dra_object = nil # until TODO complete, we'll expect to have to reparse after modification
|
145
145
|
end
|
146
146
|
|
147
|
-
def to_solr(solr_doc = {}, *args)
|
148
|
-
solr_doc = super(solr_doc, *args)
|
149
|
-
dra = dra_object
|
150
|
-
solr_doc['rights_primary_ssi'] = dra.index_elements[:primary]
|
151
|
-
solr_doc['rights_errors_ssim'] = dra.index_elements[:errors] if dra.index_elements[:errors].size > 0
|
152
|
-
solr_doc['rights_characteristics_ssim'] = dra.index_elements[:terms] if dra.index_elements[:terms].size > 0
|
153
|
-
|
154
|
-
solr_doc['rights_descriptions_ssim'] = [
|
155
|
-
dra.index_elements[:primary],
|
156
|
-
|
157
|
-
(dra.index_elements[:obj_locations_qualified] || []).map do |rights_info|
|
158
|
-
rule_suffix = rights_info[:rule] ? " (#{rights_info[:rule]})" : ''
|
159
|
-
"location: #{rights_info[:location]}#{rule_suffix}"
|
160
|
-
end,
|
161
|
-
(dra.index_elements[:file_locations_qualified] || []).map do |rights_info|
|
162
|
-
rule_suffix = rights_info[:rule] ? " (#{rights_info[:rule]})" : ''
|
163
|
-
"location: #{rights_info[:location]} (file)#{rule_suffix}"
|
164
|
-
end,
|
165
|
-
|
166
|
-
(dra.index_elements[:obj_agents_qualified] || []).map do |rights_info|
|
167
|
-
rule_suffix = rights_info[:rule] ? " (#{rights_info[:rule]})" : ''
|
168
|
-
"agent: #{rights_info[:agent]}#{rule_suffix}"
|
169
|
-
end,
|
170
|
-
(dra.index_elements[:file_agents_qualified] || []).map do |rights_info|
|
171
|
-
rule_suffix = rights_info[:rule] ? " (#{rights_info[:rule]})" : ''
|
172
|
-
"agent: #{rights_info[:agent]} (file)#{rule_suffix}"
|
173
|
-
end,
|
174
|
-
|
175
|
-
(dra.index_elements[:obj_groups_qualified] || []).map do |rights_info|
|
176
|
-
rule_suffix = rights_info[:rule] ? " (#{rights_info[:rule]})" : ''
|
177
|
-
"#{rights_info[:group]}#{rule_suffix}"
|
178
|
-
end,
|
179
|
-
(dra.index_elements[:file_groups_qualified] || []).map do |rights_info|
|
180
|
-
rule_suffix = rights_info[:rule] ? " (#{rights_info[:rule]})" : ''
|
181
|
-
"#{rights_info[:group]} (file)#{rule_suffix}"
|
182
|
-
end,
|
183
|
-
|
184
|
-
(dra.index_elements[:obj_world_qualified] || []).map do |rights_info|
|
185
|
-
rule_suffix = rights_info[:rule] ? " (#{rights_info[:rule]})" : ''
|
186
|
-
"world#{rule_suffix}"
|
187
|
-
end,
|
188
|
-
(dra.index_elements[:file_world_qualified] || []).map do |rights_info|
|
189
|
-
rule_suffix = rights_info[:rule] ? " (#{rights_info[:rule]})" : ''
|
190
|
-
"world (file)#{rule_suffix}"
|
191
|
-
end
|
192
|
-
].flatten.uniq
|
193
|
-
|
194
|
-
# these two values are returned by index_elements[:primary], but are just a less granular version of
|
195
|
-
# what the other more specific fields return, so discard them
|
196
|
-
solr_doc['rights_descriptions_ssim'] -= %w[access_restricted access_restricted_qualified world_qualified]
|
197
|
-
solr_doc['rights_descriptions_ssim'] += ['dark (file)'] if dra.index_elements[:terms].include? 'none_read_file'
|
198
|
-
|
199
|
-
solr_doc['obj_rights_locations_ssim'] = dra.index_elements[:obj_locations] unless dra.index_elements[:obj_locations].blank?
|
200
|
-
solr_doc['file_rights_locations_ssim'] = dra.index_elements[:file_locations] unless dra.index_elements[:file_locations].blank?
|
201
|
-
solr_doc['obj_rights_agents_ssim'] = dra.index_elements[:obj_agents] unless dra.index_elements[:obj_agents].blank?
|
202
|
-
solr_doc['file_rights_agents_ssim'] = dra.index_elements[:file_agents] unless dra.index_elements[:file_agents].blank?
|
203
|
-
|
204
|
-
# suppress empties
|
205
|
-
%w(use_statement_ssim copyright_ssim).each do |key|
|
206
|
-
solr_doc[key] = solr_doc[key].reject(&:blank?).flatten unless solr_doc[key].nil?
|
207
|
-
end
|
208
|
-
add_solr_value(solr_doc, 'use_license_machine', use_license.first, :string, [:stored_sortable])
|
209
|
-
add_solr_value(solr_doc, 'use_licenses_machine', use_license, :symbol, [:stored_searchable])
|
210
|
-
|
211
|
-
solr_doc
|
212
|
-
end
|
213
|
-
|
214
147
|
def use_license
|
215
148
|
use_license = []
|
216
149
|
use_license += Array(creative_commons)
|
@@ -219,11 +152,6 @@ module Dor
|
|
219
152
|
use_license.reject(&:blank?)
|
220
153
|
end
|
221
154
|
|
222
|
-
# maintain AF < 8 indexing behavior
|
223
|
-
def prefix
|
224
|
-
''
|
225
|
-
end
|
226
|
-
|
227
155
|
def rights
|
228
156
|
xml = ng_xml
|
229
157
|
if xml.search('//rightsMetadata/access[@type=\'read\']/machine/group').length == 1
|
@@ -7,7 +7,7 @@ module Dor
|
|
7
7
|
has_metadata name: 'administrativeMetadata', type: Dor::AdministrativeMetadataDS, label: 'Administrative Metadata'
|
8
8
|
has_metadata name: 'roleMetadata', type: Dor::RoleMetadataDS, label: 'Role Metadata'
|
9
9
|
has_metadata name: 'defaultObjectRights', type: Dor::DefaultObjectRightsDS, label: 'Default Object Rights'
|
10
|
-
belongs_to :agreement_object, property: :referencesAgreement, class_name: 'Dor::
|
10
|
+
belongs_to :agreement_object, property: :referencesAgreement, class_name: 'Dor::Agreement'
|
11
11
|
|
12
12
|
delegate :add_roleplayer, :purge_roles, :roles, to: :roleMetadata
|
13
13
|
delegate :mods_title, :mods_title=, to: :descMetadata
|
data/lib/dor/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: dor-services
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 9.
|
4
|
+
version: 9.4.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Michael Klein
|
@@ -20,7 +20,7 @@ authors:
|
|
20
20
|
autorequire:
|
21
21
|
bindir: bin
|
22
22
|
cert_chain: []
|
23
|
-
date: 2020-
|
23
|
+
date: 2020-05-20 00:00:00.000000000 Z
|
24
24
|
dependencies:
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: active-fedora
|
@@ -483,7 +483,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
483
483
|
- !ruby/object:Gem::Version
|
484
484
|
version: 1.3.6
|
485
485
|
requirements: []
|
486
|
-
rubygems_version: 3.0.
|
486
|
+
rubygems_version: 3.0.3
|
487
487
|
signing_key:
|
488
488
|
specification_version: 4
|
489
489
|
summary: Ruby implmentation of DOR services used by the SULAIR Digital Library
|