hydra-pbcore 0.0.1 → 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
data/hydra-pbcore.gemspec CHANGED
@@ -13,7 +13,7 @@ Gem::Specification.new do |gem|
13
13
  gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
14
14
  gem.name = "hydra-pbcore"
15
15
  gem.require_paths = ["lib"]
16
- gem.version = "0.0.1"
16
+ gem.version = "0.0.2"
17
17
 
18
18
  # Dependencies
19
19
  gem.add_dependency('nokogiri')
data/lib/hydra-pbcore.rb CHANGED
@@ -5,7 +5,7 @@ require "om"
5
5
  require "active-fedora"
6
6
 
7
7
  module HydraPbcore
8
- VERSION = "0.0.1"
8
+ VERSION = "0.0.2"
9
9
  def self.version
10
10
  HydraPbcore::VERSION
11
11
  end
@@ -191,78 +191,6 @@ class DigitalDocument < ActiveFedora::NokogiriDatastream
191
191
  end
192
192
  return builder.doc
193
193
  end
194
-
195
-
196
- def to_solr(solr_doc=Solr::Document.new)
197
- super(solr_doc)
198
-
199
- solr_doc.merge!(:format => "Video")
200
- solr_doc.merge!(:title_t => self.find_by_terms(:main_title).text)
201
-
202
- # Specific fields for Blacklight export
203
-
204
- # Title fields
205
- solr_doc.merge!(:title_display => self.find_by_terms(:main_title).text)
206
- ["alternative_title", "chapter", "episode", "label", "segment", "subtitle", "track", "translation"].each do |addl_title|
207
- solr_doc.merge!(:title_addl_display => self.find_by_terms(addl_title.to_sym).text)
208
- end
209
- solr_doc.merge!(:heading_display => self.find_by_terms(:main_title).text)
210
-
211
- # Individual fields
212
- solr_doc.merge!(:summary_display => self.find_by_terms(:summary).text)
213
- solr_doc.merge!(:pub_date_display => self.find_by_terms(:event_date).text)
214
- solr_doc.merge!(:publisher_display => gather_terms(self.find_by_terms(:publisher_name)))
215
- solr_doc.merge!(:contributors_display => format_contributors_display)
216
- solr_doc.merge!(:subject_display => gather_terms(self.find_by_terms(:subjects)))
217
- solr_doc.merge!(:genre_display => gather_terms(self.find_by_terms(:genres)))
218
- solr_doc.merge!(:series_display => gather_terms(self.find_by_terms(:event_series)))
219
-
220
- solr_doc.merge!(:recinfo_display => gather_terms(self.find_by_terms(:event_place)))
221
- solr_doc.merge!(:recinfo_display => gather_terms(self.find_by_terms(:event_date)))
222
- solr_doc.merge!(:contents_display => gather_terms(self.find_by_terms(:parts_list)))
223
- solr_doc.merge!(:notes_display => gather_terms(self.find_by_terms(:note)))
224
-
225
-
226
-
227
- # Blacklight facets - these are the same facet fields used in our Blacklight app
228
- # for consistency and so they'll show up when we export records from Hydra into BL:
229
- solr_doc.merge!(:material_facet => "Digital")
230
- solr_doc.merge!(:genre_facet => gather_terms(self.find_by_terms(:genres)))
231
- solr_doc.merge!(:name_facet => gather_terms(self.find_by_terms(:contributor_name)))
232
- solr_doc.merge!(:subject_topic_facet => gather_terms(self.find_by_terms(:subjects)))
233
- solr_doc.merge!(:series_facet => gather_terms(self.find_by_terms(:event_series)))
234
-
235
- # These fields are not in the parent...
236
- #solr_doc.merge!(:format_facet => gather_terms(self.find_by_terms(:format)))
237
- #solr_doc.merge!(:collection_facet => gather_terms(self.find_by_terms(:archival_collection)))
238
- #solr_doc.merge!(:collection_display => gather_terms(self.find_by_terms(:archival_collection)))
239
- #solr_doc.merge!(:physical_dtl_display => gather_terms(self.find_by_terms(:format)))
240
- #solr_doc.merge!(:access_display => gather_terms(self.find_by_terms(:usage)))
241
-
242
- # TODO: map PBcore's three-letter language codes to full language names
243
- # Right now, everything's English.
244
- # language field is not in the parent... yet?
245
- # if self.find_by_terms(:language).text.match("eng")
246
- # solr_doc.merge!(:language_facet => "English")
247
- # solr_doc.merge!(:language_display => "English")
248
- # else
249
- # solr_doc.merge!(:language_facet => "Unknown")
250
- # solr_doc.merge!(:language_display => "Unknown")
251
- # end
252
-
253
- # Extract 4-digit year for creation date facet in Hydra and pub_date facet in Blacklight
254
- # not in parent
255
- # create = self.find_by_terms(:creation_date).text.strip
256
- # unless create.nil? or create.empty?
257
- # solr_doc.merge!(:create_date_facet => DateTime.parse(create).strftime("%Y"))
258
- # solr_doc.merge!(:pub_date => DateTime.parse(create).strftime("%Y"))
259
- # end
260
-
261
- # For full text, we stuff it into the mods_t field which is already configured for Mods doucments
262
- solr_doc.merge!(:mods_t => self.ng_xml.text)
263
-
264
- return solr_doc
265
- end
266
194
 
267
195
 
268
196
  end
@@ -256,70 +256,5 @@ class Document < ActiveFedora::NokogiriDatastream
256
256
  end
257
257
 
258
258
 
259
- def to_solr(solr_doc=Solr::Document.new)
260
- super(solr_doc)
261
-
262
- solr_doc.merge!(:format => "Video")
263
- solr_doc.merge!(:title_t => self.find_by_terms(:main_title).text)
264
-
265
- # Specific fields for Blacklight export
266
-
267
- # Title fields
268
- solr_doc.merge!(:title_display => self.find_by_terms(:main_title).text)
269
- ["alternative_title", "chapter", "episode", "label", "segment", "subtitle", "track", "translation"].each do |addl_title|
270
- solr_doc.merge!(:title_addl_display => self.find_by_terms(addl_title.to_sym).text)
271
- end
272
- solr_doc.merge!(:heading_display => self.find_by_terms(:main_title).text)
273
-
274
- # Individual fields
275
- solr_doc.merge!(:summary_display => self.find_by_terms(:summary).text)
276
- solr_doc.merge!(:pub_date_display => self.find_by_terms(:event_date).text)
277
- solr_doc.merge!(:publisher_display => gather_terms(self.find_by_terms(:publisher_name)))
278
- solr_doc.merge!(:contributors_display => format_contributors_display)
279
- solr_doc.merge!(:subject_display => gather_terms(self.find_by_terms(:subjects)))
280
- solr_doc.merge!(:genre_display => gather_terms(self.find_by_terms(:genres)))
281
- solr_doc.merge!(:series_display => gather_terms(self.find_by_terms(:event_series)))
282
- solr_doc.merge!(:physical_dtl_display => gather_terms(self.find_by_terms(:format)))
283
- solr_doc.merge!(:recinfo_display => gather_terms(self.find_by_terms(:event_place)))
284
- solr_doc.merge!(:recinfo_display => gather_terms(self.find_by_terms(:event_date)))
285
- solr_doc.merge!(:contents_display => gather_terms(self.find_by_terms(:parts_list)))
286
- solr_doc.merge!(:notes_display => gather_terms(self.find_by_terms(:note)))
287
- solr_doc.merge!(:access_display => gather_terms(self.find_by_terms(:usage)))
288
- solr_doc.merge!(:collection_display => gather_terms(self.find_by_terms(:archival_collection)))
289
-
290
- # Blacklight facets - these are the same facet fields used in our Blacklight app
291
- # for consistency and so they'll show up when we export records from Hydra into BL:
292
- solr_doc.merge!(:material_facet => "Digital")
293
- solr_doc.merge!(:genre_facet => gather_terms(self.find_by_terms(:genres)))
294
- solr_doc.merge!(:name_facet => gather_terms(self.find_by_terms(:contributor_name)))
295
- solr_doc.merge!(:subject_topic_facet => gather_terms(self.find_by_terms(:subjects)))
296
- solr_doc.merge!(:series_facet => gather_terms(self.find_by_terms(:event_series)))
297
- solr_doc.merge!(:format_facet => gather_terms(self.find_by_terms(:format)))
298
- solr_doc.merge!(:collection_facet => gather_terms(self.find_by_terms(:archival_collection)))
299
-
300
- # TODO: map PBcore's three-letter language codes to full language names
301
- # Right now, everything's English.
302
- if self.find_by_terms(:language).text.match("eng")
303
- solr_doc.merge!(:language_facet => "English")
304
- solr_doc.merge!(:language_display => "English")
305
- else
306
- solr_doc.merge!(:language_facet => "Unknown")
307
- solr_doc.merge!(:language_display => "Unknown")
308
- end
309
-
310
- # Extract 4-digit year for creation date facet in Hydra and pub_date facet in Blacklight
311
- create = self.find_by_terms(:creation_date).text.strip
312
- unless create.nil? or create.empty?
313
- solr_doc.merge!(:create_date_facet => get_year(create))
314
- solr_doc.merge!(:pub_date => get_year(create))
315
- end
316
-
317
- # For full text, we stuff it into the mods_t field which is already configured for Mods doucments
318
- solr_doc.merge!(:mods_t => self.ng_xml.text)
319
-
320
- return solr_doc
321
- end
322
-
323
-
324
259
  end
325
260
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hydra-pbcore
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors: