cul_scv_hydra 0.6.4 → 0.7.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +15 -0
- data/app/assets/images/cul_scv_hydra/crystal/binary.png +0 -0
- data/app/assets/images/cul_scv_hydra/crystal/document.png +0 -0
- data/app/assets/images/cul_scv_hydra/crystal/file.png +0 -0
- data/app/assets/images/cul_scv_hydra/crystal/file_broken.png +0 -0
- data/app/assets/images/cul_scv_hydra/crystal/folder_documents.png +0 -0
- data/app/assets/images/cul_scv_hydra/crystal/folder_images.png +0 -0
- data/app/assets/images/cul_scv_hydra/crystal/folder_music.png +0 -0
- data/app/assets/images/cul_scv_hydra/crystal/folder_sound.png +0 -0
- data/app/assets/images/cul_scv_hydra/crystal/folder_video.png +0 -0
- data/app/assets/images/cul_scv_hydra/crystal/kmultiple.png +0 -0
- data/app/assets/images/cul_scv_hydra/crystal/knotify.png +0 -0
- data/app/assets/images/cul_scv_hydra/crystal/mp3.png +0 -0
- data/app/assets/images/cul_scv_hydra/crystal/multimedia2.png +0 -0
- data/app/assets/images/cul_scv_hydra/crystal/video.png +0 -0
- data/app/models/content_aggregator.rb +15 -0
- data/app/models/generic_resource.rb +53 -0
- data/app/models/jp2_image_aggregator.rb +4 -0
- data/app/models/resource.rb +22 -0
- data/app/models/static_audio_aggregator.rb +4 -0
- data/app/models/static_image_aggregator.rb +23 -0
- data/config/predicate_mappings.yml +16 -5
- data/config/subs.yml +12 -0
- data/lib/cul_scv_hydra.rb +8 -7
- data/lib/cul_scv_hydra/active_fedora/model/aggregator.rb +1 -1
- data/lib/cul_scv_hydra/active_fedora/model/common.rb +24 -13
- data/lib/cul_scv_hydra/active_fedora/model/resource.rb +15 -7
- data/lib/cul_scv_hydra/controllers/helpers/hydra_assets_helper_behavior.rb +19 -19
- data/lib/cul_scv_hydra/controllers/terms.rb +3 -2
- data/lib/cul_scv_hydra/om/dc_metadata.rb +15 -15
- data/lib/cul_scv_hydra/om/scv_mods_document.rb +9 -9
- data/lib/cul_scv_hydra/solrizer/terminology_based_solrizer.rb +7 -11
- data/lib/cul_scv_hydra/version.rb +1 -1
- data/lib/tasks/cmodel.rake +97 -0
- metadata +119 -86
- data/config/fedora.yml +0 -12
- data/config/solr.yml +0 -6
checksums.yaml
ADDED
@@ -0,0 +1,15 @@
|
|
1
|
+
---
|
2
|
+
!binary "U0hBMQ==":
|
3
|
+
metadata.gz: !binary |-
|
4
|
+
YTA1YzIzNjNjZWI5YjllODU5MGE3NzkwOGRlYjA5YWYyMDc4ZmU4NA==
|
5
|
+
data.tar.gz: !binary |-
|
6
|
+
ZjUyODhkNDIwMmI0ZjA2NTllMTRiNDgxYTAwZTAzNzdiYmY5OTgzMw==
|
7
|
+
!binary "U0hBNTEy":
|
8
|
+
metadata.gz: !binary |-
|
9
|
+
ZTcyNWQ0MmQ1YTgwZThhNTY0NDg5NzRhNGM0N2RiNjZlODBhNjA1MTRmZWM0
|
10
|
+
NjcxNmQ1MzI5ZDc0ZTc3MmY1MWVlYTBmYThkYzY1MTc5YjUwYzg2NDZhNWVm
|
11
|
+
NGRjNGVmNWVkYTUxMzU3OWZhMmI4OWIxY2VhN2MxNDkyNzViZGY=
|
12
|
+
data.tar.gz: !binary |-
|
13
|
+
NDI5Y2JmODlkYWJmZjNlMWM4M2Y1M2RmYzZiMTgwMWI1NDAyNTk3YTA4NDkz
|
14
|
+
MGUzMTI5Y2E2YTdmYTJmZDE0YTUxNjdlYTQ2OWFlYWQxMDRhNjE0NDU4ZDcx
|
15
|
+
Yjk1OTE5N2Y0Y2E2NmU4NjFmNGEyYzVlNzczMDdjNDUxZDRlNjM=
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
@@ -13,4 +13,19 @@ class ContentAggregator < ::ActiveFedora::Base
|
|
13
13
|
def route_as
|
14
14
|
"multipartitem"
|
15
15
|
end
|
16
|
+
|
17
|
+
def thumbnail_info
|
18
|
+
members = resources
|
19
|
+
if members.length > 1
|
20
|
+
return {:url=>image_url("cul_scv_hydra/crystal/kmultiple.png"),:mime=>'image/png'}
|
21
|
+
elsif members.length == 0
|
22
|
+
return {:url=>image_url("cul_scv_hydra/crystal/file.png"),:mime=>'image/png'}
|
23
|
+
else
|
24
|
+
member = ActiveFedora::Base.find(members[0], :cast=>true)
|
25
|
+
if member.respond_to? :thumbnail_info
|
26
|
+
return member.thumbnail_info
|
27
|
+
end
|
28
|
+
end
|
29
|
+
return {:url=>image_url("cul_scv_hydra/crystal/file.png"),:mime=>'image/png'}
|
30
|
+
end
|
16
31
|
end
|
@@ -0,0 +1,53 @@
|
|
1
|
+
require "cul_image_props"
|
2
|
+
require "mime/types"
|
3
|
+
require "uri"
|
4
|
+
require "open-uri"
|
5
|
+
require "tempfile"
|
6
|
+
class GenericResource < ::ActiveFedora::Base
|
7
|
+
extend ActiveModel::Callbacks
|
8
|
+
include ::ActiveFedora::Finders
|
9
|
+
include ::ActiveFedora::DatastreamCollections
|
10
|
+
include ::ActiveFedora::Relationships
|
11
|
+
include ::Hydra::ModelMethods
|
12
|
+
include Cul::Scv::Hydra::ActiveFedora::Model::Common
|
13
|
+
include ::ActiveFedora::RelsInt
|
14
|
+
alias :file_objects :resources
|
15
|
+
|
16
|
+
IMAGE_EXT = {"image/bmp" => 'bmp', "image/gif" => 'gif', "image/jpeg" => 'jpg', "image/png" => 'png', "image/tiff" => 'tif', "image/x-windows-bmp" => 'bmp'}
|
17
|
+
WIDTH = RDF::URI(ActiveFedora::Predicates.find_graph_predicate(:image_width))
|
18
|
+
LENGTH = RDF::URI(ActiveFedora::Predicates.find_graph_predicate(:image_length))
|
19
|
+
|
20
|
+
has_datastream :name => "content", :type=>::ActiveFedora::Datastream, :versionable => true
|
21
|
+
|
22
|
+
def assert_content_model
|
23
|
+
super
|
24
|
+
add_relationship(:rdf_type, Cul::Scv::Hydra::ActiveFedora::RESOURCE_TYPE.to_s)
|
25
|
+
end
|
26
|
+
|
27
|
+
def route_as
|
28
|
+
"resource"
|
29
|
+
end
|
30
|
+
|
31
|
+
def index_type_label
|
32
|
+
"FILE RESOURCE"
|
33
|
+
end
|
34
|
+
|
35
|
+
def to_solr(solr_doc = Hash.new, opts={})
|
36
|
+
super
|
37
|
+
unless solr_doc["extent_s"] || self.datastreams["content"].nil?
|
38
|
+
solr_doc["extent_s"] = [self.datastreams["content"].size]
|
39
|
+
end
|
40
|
+
solr_doc
|
41
|
+
end
|
42
|
+
|
43
|
+
def thumbnail_info
|
44
|
+
thumb = relsint.relationships(datastreams['content'],:foaf_thumb).first
|
45
|
+
if thumb
|
46
|
+
t_dsid = thumb.object.to_s.split('/')[-1]
|
47
|
+
return {:url=>"#{ActiveFedora.fedora_config[:url]}/objects/#{pid}/datastreams/#{t_dsid}/content",:mime=>datastreams[t_dsid].mimeType}
|
48
|
+
else
|
49
|
+
return {:url=>image_url("cul_scv_hydra/crystal/file.png"),:mime=>'image/png'}
|
50
|
+
end
|
51
|
+
end
|
52
|
+
|
53
|
+
end
|
data/app/models/resource.rb
CHANGED
@@ -13,6 +13,11 @@ class Resource < ::ActiveFedora::Base
|
|
13
13
|
|
14
14
|
alias :file_objects :resources
|
15
15
|
|
16
|
+
CUL_WIDTH = "http://purl.oclc.org/NET/CUL/RESOURCE/STILLIMAGE/BASIC/imageWidth"
|
17
|
+
CUL_LENGTH = "http://purl.oclc.org/NET/CUL/RESOURCE/STILLIMAGE/BASIC/imageLength"
|
18
|
+
FORMAT = "http://purl.org/dc/elements/1.1/format"
|
19
|
+
MEMBER_OF = "http://purl.oclc.org/NET/CUL/memberOf"
|
20
|
+
|
16
21
|
def route_as
|
17
22
|
"resource"
|
18
23
|
end
|
@@ -55,4 +60,21 @@ class Resource < ::ActiveFedora::Base
|
|
55
60
|
end
|
56
61
|
end
|
57
62
|
end
|
63
|
+
|
64
|
+
def thumbnail_info
|
65
|
+
# do the triples indicate this is a thumb? fetch
|
66
|
+
width = object_relations[CUL_WIDTH].first.to_i
|
67
|
+
length = object_relations[CUL_LENGTH].first.to_i
|
68
|
+
if width <= 251 && length <= 251
|
69
|
+
mime = object_relations[FORMAT].first
|
70
|
+
url = {:url=>"#{ActiveFedora.fedora_config[:url]}/objects/#{self.pid}/datastreams/CONTENT/content", :mime=>mime}
|
71
|
+
else
|
72
|
+
if object_relations[MEMBER_OF].blank?
|
73
|
+
return {:url=>image_url("cul_scv_hydra/crystal/file.png"),:mime=>'image/png'}
|
74
|
+
else
|
75
|
+
url = StaticImageAggregator.find(object_relations[MEMBER_OF].first).thumbnail_info
|
76
|
+
end
|
77
|
+
end
|
78
|
+
return url
|
79
|
+
end
|
58
80
|
end
|
@@ -9,6 +9,9 @@ class StaticImageAggregator < ::ActiveFedora::Base
|
|
9
9
|
include Cul::Scv::Hydra::ActiveFedora::Model::Aggregator
|
10
10
|
|
11
11
|
alias :file_objects :resources
|
12
|
+
|
13
|
+
CUL_WIDTH = "http://purl.oclc.org/NET/CUL/RESOURCE/STILLIMAGE/BASIC/imageWidth"
|
14
|
+
CUL_LENGTH = "http://purl.oclc.org/NET/CUL/RESOURCE/STILLIMAGE/BASIC/imageLength"
|
12
15
|
|
13
16
|
def route_as
|
14
17
|
"image"
|
@@ -17,4 +20,24 @@ class StaticImageAggregator < ::ActiveFedora::Base
|
|
17
20
|
def index_type_label
|
18
21
|
"PART"
|
19
22
|
end
|
23
|
+
|
24
|
+
def thumbnail_info
|
25
|
+
candidate = nil
|
26
|
+
max_dim = 251
|
27
|
+
resources.each do |pid|
|
28
|
+
resource = Resource.find(pid)
|
29
|
+
width = resource.object_relations[CUL_WIDTH].first.to_i
|
30
|
+
length = resource.object_relations[CUL_LENGTH].first.to_i
|
31
|
+
max = (width > length) ? width : length
|
32
|
+
if max_dim > max
|
33
|
+
candidate = resource
|
34
|
+
max_dim = max
|
35
|
+
end
|
36
|
+
end
|
37
|
+
if candidate.nil?
|
38
|
+
return {:url=>image_url("cul_scv_hydra/crystal/file_broken.png"),:mime=>'image/png'}
|
39
|
+
else
|
40
|
+
return {:url=>"#{ActiveFedora.fedora_config[:url]}/objects/#{candidate.pid}/datastreams/CONTENT/content",:mime=>candidate.datastreams['CONENT'].mimeType}
|
41
|
+
end
|
42
|
+
end
|
20
43
|
end
|
@@ -15,6 +15,7 @@
|
|
15
15
|
#
|
16
16
|
:predicate_mapping:
|
17
17
|
http://purl.oclc.org/NET/CUL/:
|
18
|
+
:cul_has_member: hasMember
|
18
19
|
:cul_member_of: memberOf
|
19
20
|
:cul_metadata_for: metadataFor
|
20
21
|
info:fedora/fedora-system:def/relations-external#:
|
@@ -44,13 +45,23 @@
|
|
44
45
|
info:fedora/fedora-system:def/model#:
|
45
46
|
:has_model: hasModel
|
46
47
|
http://purl.oclc.org/NET/CUL/RESOURCE/STILLIMAGE/BASIC/:
|
47
|
-
:
|
48
|
-
:
|
48
|
+
:cul_image_width: imageWidth
|
49
|
+
:cul_image_length: imageLength
|
49
50
|
http://purl.oclc.org/NET/CUL/RESOURCE/STILLIMAGE/ASSESSMENT/:
|
50
|
-
:
|
51
|
-
:
|
52
|
-
:
|
51
|
+
:cul_x_resolution: xSamplingFrequency
|
52
|
+
:cul_y_resolution: ySamplingFrequency
|
53
|
+
:cul_resolution_unit: samplingFrequencyUnit
|
53
54
|
http://purl.org/dc/terms/:
|
54
55
|
:extent: extent
|
56
|
+
:format: format
|
57
|
+
:format_of: isFormatOf
|
58
|
+
http://www.w3.org/2003/12/exif/ns#:
|
59
|
+
:image_width: imageWidth
|
60
|
+
:image_length: imageLength
|
61
|
+
:x_resolution: xResolution
|
62
|
+
:y_resolution: yResolution
|
63
|
+
:resolution_unti: resolutionUnit
|
64
|
+
http://xmlns.com/foaf/0.1/:
|
65
|
+
:foaf_thumbnail: thumbnail
|
55
66
|
http://www.w3.org/1999/02/22-rdf-syntax-ns#:
|
56
67
|
:rdf_type: type
|
data/config/subs.yml
ADDED
@@ -0,0 +1,12 @@
|
|
1
|
+
development:
|
2
|
+
djatoka_server: "http://iris.cul.columbia.edu:8080"
|
3
|
+
fedora_server: "http://sayers.cul.columbia.edu:8080"
|
4
|
+
php_server: "http://bach.cul.columbia.edu/dev"
|
5
|
+
test:
|
6
|
+
djatoka_server: "http://iris.cul.columbia.edu:8080"
|
7
|
+
fedora_server: "http://sayers.cul.columbia.edu:8080"
|
8
|
+
php_server: "http://bach.cul.columbia.edu/dev"
|
9
|
+
production:
|
10
|
+
djatoka_server: "http://iris.cul.columbia.edu:8080"
|
11
|
+
fedora_server: "http://alcott.cul.columbia.edu:8080"
|
12
|
+
php_server: "http://bach.cul.columbia.edu"
|
data/lib/cul_scv_hydra.rb
CHANGED
@@ -6,13 +6,14 @@ module Cul
|
|
6
6
|
end
|
7
7
|
end
|
8
8
|
# this is a hack to make requiring hydra possible
|
9
|
-
module Hydra
|
10
|
-
module Datastream
|
11
|
-
module CommonModsIndexMethods
|
12
|
-
end
|
13
|
-
end
|
14
|
-
end
|
15
|
-
require 'hydra'
|
9
|
+
#module Hydra
|
10
|
+
# module Datastream
|
11
|
+
# module CommonModsIndexMethods
|
12
|
+
# end
|
13
|
+
# end
|
14
|
+
#end
|
15
|
+
require 'hydra/head'
|
16
|
+
require 'active_fedora_relsint'
|
16
17
|
require "cul_scv_hydra/access_controls_enforcement"
|
17
18
|
require "cul_scv_hydra/active_fedora"
|
18
19
|
require "cul_scv_hydra/controllers"
|
@@ -7,18 +7,22 @@ module Common
|
|
7
7
|
included do
|
8
8
|
define_model_callbacks :create
|
9
9
|
|
10
|
-
|
11
|
-
has_relationship "rdf_type", :rdf_type
|
10
|
+
has_and_belongs_to_many :containers, :property=>:cul_member_of
|
12
11
|
has_metadata :name => "DC", :type=>Cul::Scv::Hydra::Om::DCMetadata, :versionable => true
|
13
12
|
has_metadata :name => "descMetadata", :type=>Cul::Scv::Hydra::Om::ModsDocument, :versionable => true
|
14
|
-
has_metadata :name => "rightsMetadata", :type=>::Hydra::RightsMetadata, :versionable => true
|
13
|
+
has_metadata :name => "rightsMetadata", :type=>::Hydra::Datastream::RightsMetadata, :versionable => true
|
14
|
+
|
15
15
|
end
|
16
16
|
|
17
17
|
module ClassMethods
|
18
18
|
def pid_namespace
|
19
19
|
"ldpd"
|
20
20
|
end
|
21
|
-
end
|
21
|
+
end
|
22
|
+
|
23
|
+
def rdf_type
|
24
|
+
relationships[:rdf_type]
|
25
|
+
end
|
22
26
|
|
23
27
|
def initialize(attrs = nil)
|
24
28
|
attrs = {} if attrs.nil?
|
@@ -100,8 +104,8 @@ module Common
|
|
100
104
|
def index_type_label
|
101
105
|
riquery = Cul::Scv::Hydra::ActiveFedora::MEMBER_QUERY.gsub(/%PID%/, self.pid)
|
102
106
|
begin
|
103
|
-
docs = ::ActiveFedora::
|
104
|
-
rescue
|
107
|
+
docs = ::ActiveFedora::Base.connection_for_pid(self.pid).find_by_sparql riquery
|
108
|
+
rescue Exception=>e
|
105
109
|
docs = self.parts
|
106
110
|
end
|
107
111
|
if docs.length == 0
|
@@ -119,7 +123,7 @@ module Common
|
|
119
123
|
begin
|
120
124
|
has_desc = self.datastreams.include? "descMetadata"
|
121
125
|
has_desc = has_desc and self.inner_object.datastreams["descMetadata"].content.length > 0
|
122
|
-
has_desc = self.datastreams["descMetadata"].term_values(:identifier).length > 0
|
126
|
+
has_desc = has_desc and self.datastreams["descMetadata"].term_values(:identifier).length > 0
|
123
127
|
rescue
|
124
128
|
has_desc = false
|
125
129
|
end
|
@@ -134,14 +138,14 @@ module Common
|
|
134
138
|
solr_doc["descriptor_s"] = ["dublin core"]
|
135
139
|
end
|
136
140
|
# if no mods, pull some values from DC
|
137
|
-
if
|
138
|
-
if self.dc.term_values(:
|
139
|
-
solr_doc["title_display"] = [self.dc.term_values(:
|
141
|
+
if (solr_doc["title_display"].nil? or solr_doc["title_display"].length == 0)
|
142
|
+
if self.dc.term_values(:dc_title).first
|
143
|
+
solr_doc["title_display"] = [self.dc.term_values(:dc_title).first]
|
140
144
|
else
|
141
|
-
solr_doc["title_display"] = [self.dc.term_values(:
|
145
|
+
solr_doc["title_display"] = [self.dc.term_values(:dc_identifier).first]
|
142
146
|
end
|
143
|
-
if self.dc.term_values(:
|
144
|
-
self.dc.term_values(:
|
147
|
+
if self.dc.term_values(:dc_relation).first
|
148
|
+
self.dc.term_values(:dc_relation).each {|val|
|
145
149
|
if val =~ /clio:/
|
146
150
|
solr_doc["clio_s"] ||= []
|
147
151
|
solr_doc["clio_s"] << val.split(':')[-1]
|
@@ -149,6 +153,9 @@ module Common
|
|
149
153
|
}
|
150
154
|
end
|
151
155
|
end
|
156
|
+
if (solr_doc["title_display"].length > 1)
|
157
|
+
solr_doc["title_display"].uniq!
|
158
|
+
end
|
152
159
|
solr_doc["format"] = [self.route_as]
|
153
160
|
solr_doc["index_type_label_s"] = [self.index_type_label]
|
154
161
|
solr_doc
|
@@ -178,6 +185,10 @@ module Common
|
|
178
185
|
end
|
179
186
|
return result
|
180
187
|
end
|
188
|
+
|
189
|
+
def thumbnail_info
|
190
|
+
{:url=>image_url("cul_scv_hydra/crystal/kmultiple.png"),:mime_type=>"image/png"}
|
191
|
+
end
|
181
192
|
|
182
193
|
private
|
183
194
|
def value_changed?(ds,pointer,values)
|
@@ -11,13 +11,21 @@ module Resource
|
|
11
11
|
]
|
12
12
|
|
13
13
|
included do
|
14
|
-
if self.
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
14
|
+
if self.is_a? ::ActiveFedora::SemanticNode
|
15
|
+
props = {
|
16
|
+
"image_width" => :image_width,
|
17
|
+
"image_length" => :image_length,
|
18
|
+
"x_sampling" => :x_sampling,
|
19
|
+
"y_sampling" => :y_sampling,
|
20
|
+
"sampling_unit" => :sampling_unit,
|
21
|
+
"extent" => :extent,
|
22
|
+
}
|
23
|
+
props.each { |x, y|
|
24
|
+
class_eval %Q{
|
25
|
+
def #{x}
|
26
|
+
return relationships[:#{y.to_s}]
|
27
|
+
}
|
28
|
+
}
|
21
29
|
|
22
30
|
after_create :resource!
|
23
31
|
end
|
@@ -1,7 +1,7 @@
|
|
1
|
-
require 'mediashelf/active_fedora_helper'
|
1
|
+
#require 'mediashelf/active_fedora_helper'
|
2
2
|
|
3
3
|
module Cul::Scv::Hydra::Controllers::Helpers::HydraAssetsHelperBehavior
|
4
|
-
include MediaShelf::ActiveFedoraHelper
|
4
|
+
# include MediaShelf::ActiveFedoraHelper
|
5
5
|
|
6
6
|
def link_to_create_asset(link_label, content_type, container_id=nil)
|
7
7
|
opts = {:action => 'new', :controller => "#{content_type}s", :content_type => content_type}
|
@@ -13,23 +13,23 @@ module Cul::Scv::Hydra::Controllers::Helpers::HydraAssetsHelperBehavior
|
|
13
13
|
end
|
14
14
|
end
|
15
15
|
|
16
|
-
def get_file_asset_description(document)
|
17
|
-
obj = load_af_instance_from_solr(document)
|
18
|
-
if obj.nil? || obj.file_objects.empty?
|
19
|
-
return ""
|
20
|
-
else
|
21
|
-
fobj = Resource.load_instance_from_solr(obj.file_objects.first.pid)
|
22
|
-
fad = ""
|
23
|
-
unless fobj.nil?
|
24
|
-
unless fobj.datastreams["descMetadata"].nil?
|
25
|
-
fad = short_description(fobj.datastreams["descMetadata"].get_values("description").first)
|
26
|
-
else
|
27
|
-
fad = short_description(fobj.datastreams["DC"].get_values("description").first)
|
28
|
-
end
|
29
|
-
end
|
30
|
-
fad
|
31
|
-
end
|
32
|
-
end
|
16
|
+
# def get_file_asset_description(document)
|
17
|
+
# obj = load_af_instance_from_solr(document)
|
18
|
+
# if obj.nil? || obj.file_objects.empty?
|
19
|
+
# return ""
|
20
|
+
# else
|
21
|
+
# fobj = Resource.load_instance_from_solr(obj.file_objects.first.pid)
|
22
|
+
# fad = ""
|
23
|
+
# unless fobj.nil?
|
24
|
+
# unless fobj.datastreams["descMetadata"].nil?
|
25
|
+
# fad = short_description(fobj.datastreams["descMetadata"].get_values("description").first)
|
26
|
+
# else
|
27
|
+
# fad = short_description(fobj.datastreams["DC"].get_values("description").first)
|
28
|
+
# end
|
29
|
+
# end
|
30
|
+
# fad
|
31
|
+
# end
|
32
|
+
# end
|
33
33
|
|
34
34
|
def apply_depositor_metadata(user, is_public=false)
|
35
35
|
if self.is_a? ActiveFedora::Base
|
@@ -1,11 +1,12 @@
|
|
1
1
|
require 'cul_scv_hydra'
|
2
2
|
require 'json'
|
3
|
+
require 'blacklight'
|
3
4
|
module Cul::Scv::Hydra::Controllers
|
4
5
|
module Terms
|
5
6
|
extend ActiveSupport::Concern
|
6
7
|
included do
|
7
|
-
include Blacklight::SolrHelper
|
8
|
-
include MediaShelf::ActiveFedoraHelper
|
8
|
+
include ::Blacklight::SolrHelper
|
9
|
+
#include MediaShelf::ActiveFedoraHelper
|
9
10
|
end
|
10
11
|
|
11
12
|
def index
|
@@ -11,21 +11,21 @@ module Om
|
|
11
11
|
"xmlns:oai_dc"=>"http://www.openarchives.org/OAI/2.0/oai_dc/",
|
12
12
|
"xmlns:dc"=>"http://purl.org/dc/elements/1.1/",
|
13
13
|
:schema=>"http://www.openarchives.org/OAI/2.0/oai_dc.xsd")
|
14
|
-
t.
|
15
|
-
t.
|
16
|
-
t.
|
17
|
-
t.
|
18
|
-
t.
|
19
|
-
t.
|
20
|
-
t.
|
21
|
-
t.
|
22
|
-
t.
|
23
|
-
t.
|
24
|
-
t.
|
25
|
-
t.
|
26
|
-
t.
|
27
|
-
t.
|
28
|
-
t.dc_type(:path=>"type", :namespace_prefix=>"dc")
|
14
|
+
t.dc_contributor(:path=>"contributor", :namespace_prefix=>"dc", :index_as=>[:displayable, :searchable])
|
15
|
+
t.dc_coverage(:path=>"coverage", :namespace_prefix=>"dc", :index_as=>[:displayable, :searchable])
|
16
|
+
t.dc_creator(:path=>"creator", :namespace_prefix=>"dc", :index_as=>[:displayable, :searchable])
|
17
|
+
t.dc_date(:path=>"date", :namespace_prefix=>"dc", :index_as=>[:displayable, :searchable])
|
18
|
+
t.dc_description(:path=>"description", :namespace_prefix=>"dc", :index_as=>[:displayable, :searchable])
|
19
|
+
t.dc_format(:path=>"format", :namespace_prefix=>"dc", :index_as=>[:displayable, :searchable])
|
20
|
+
t.dc_identifier(:path=>"identifier", :namespace_prefix=>"dc", :index_as=>[:displayable, :searchable])
|
21
|
+
t.dc_language(:path=>"language", :namespace_prefix=>"dc", :index_as=>[:displayable, :searchable])
|
22
|
+
t.dc_publisher(:path=>"publisher", :namespace_prefix=>"dc", :index_as=>[:displayable, :searchable])
|
23
|
+
t.dc_relation(:path=>"relation", :namespace_prefix=>"dc", :index_as=>[:displayable, :searchable])
|
24
|
+
t.dc_rights(:path=>"rights", :namespace_prefix=>"dc", :index_as=>[:displayable, :searchable])
|
25
|
+
t.dc_source(:path=>"source", :namespace_prefix=>"dc", :index_as=>[:displayable, :searchable])
|
26
|
+
t.dc_subject(:path=>"subject", :namespace_prefix=>"dc", :index_as=>[:displayable, :searchable])
|
27
|
+
t.dc_title(:path=>"title", :namespace_prefix=>"dc", :index_as=>[:displayable, :searchable])
|
28
|
+
t.dc_type(:path=>"type", :namespace_prefix=>"dc", :index_as=>[:displayable, :searchable])
|
29
29
|
end
|
30
30
|
|
31
31
|
def self.xml_template
|
@@ -40,21 +40,21 @@ module Om
|
|
40
40
|
# pattern matches
|
41
41
|
t.identifier(:path=>"identifier", :attributes=>{:type=>"local"}, :data_type=>:symbol)
|
42
42
|
t.identifier_text(:ref=>:identifier, :index_as=>[:not_searchable, :textable])
|
43
|
-
t.clio(:path=>"identifier", :attributes=>{:type=>"CLIO"}, :data_type=>:symbol)
|
43
|
+
t.clio(:path=>"identifier", :attributes=>{:type=>"CLIO"}, :data_type=>:symbol, :index_as=>[:searchable, :displayable])
|
44
44
|
t.abstract
|
45
45
|
t.subject {
|
46
46
|
t.topic
|
47
47
|
}
|
48
|
-
t.type_of_resource(:path=>"typeOfResource", :index_as=>[:not_searchable])
|
48
|
+
t.type_of_resource(:path=>"typeOfResource", :index_as=>[:not_searchable,:displayable])
|
49
49
|
t.physical_description(:path=>"physicalDescription", :index_as=>[:not_searchable]){
|
50
|
-
t.form_marc(:path=>"form", :attributes=>{:authority=>"marcform"}, :index_as=>[:not_searchable])
|
51
|
-
t.form_aat(:path=>"form", :attributes=>{:authority=>"aat"}, :index_as=>[:not_searchable])
|
52
|
-
t.form(:attributes=>{:authority=>:none}, :index_as=>[:not_searchable])
|
50
|
+
t.form_marc(:path=>"form", :attributes=>{:authority=>"marcform"}, :index_as=>[:not_searchable,:displayable])
|
51
|
+
t.form_aat(:path=>"form", :attributes=>{:authority=>"aat"}, :index_as=>[:not_searchable,:displayable])
|
52
|
+
t.form(:attributes=>{:authority=>:none}, :index_as=>[:not_searchable,:displayable])
|
53
53
|
t.form_nomarc(:path=>"form[@authority !='marcform']", :index_as=>[:not_searchable, :displayable, :facetable])
|
54
|
-
t.extent(:path=>"extent", :index_as=>[:
|
55
|
-
t.reformatting_quality(:path=>"reformattingQuality", :index_as=>[:not_searchable])
|
56
|
-
t.internet_media_type(:path=>"internetMediaType", :index_as=>[:not_searchable])
|
57
|
-
t.digital_origin(:path=>"digitalOrigin", :index_as=>[:not_searchable])
|
54
|
+
t.extent(:path=>"extent", :index_as=>[:searchable, :displayable])
|
55
|
+
t.reformatting_quality(:path=>"reformattingQuality", :index_as=>[:not_searchable,:displayable])
|
56
|
+
t.internet_media_type(:path=>"internetMediaType", :index_as=>[:not_searchable,:displayable])
|
57
|
+
t.digital_origin(:path=>"digitalOrigin", :index_as=>[:not_searchable,:displayable])
|
58
58
|
}
|
59
59
|
t.lib_format(:proxy=>[:physical_description, :form_nomarc])
|
60
60
|
t.location(:path=>"location", :index_as=>[:not_searchable]){
|
@@ -1,14 +1,10 @@
|
|
1
|
-
require '
|
1
|
+
require 'om'
|
2
2
|
module Cul::Scv::Hydra::Solrizer::TerminologyBasedSolrizer
|
3
3
|
# copied from Solrizer::XML::TerminologyBasedSolrizer
|
4
4
|
def self.default_field_mapper
|
5
5
|
@@default_field_mapper ||= Cul::Scv::Hydra::Solrizer::FieldMapper.default
|
6
6
|
end
|
7
7
|
|
8
|
-
def self.default_extractor
|
9
|
-
@@default_extractor ||= Cul::Scv::Hydra::Solrizer::Extractor.new
|
10
|
-
end
|
11
|
-
|
12
8
|
def self.default_value_mapper
|
13
9
|
@@value_mapper ||= Cul::Scv::Hydra::Solrizer::ValueMapper.new
|
14
10
|
end
|
@@ -71,26 +67,26 @@ module Cul::Scv::Hydra::Solrizer::TerminologyBasedSolrizer
|
|
71
67
|
end
|
72
68
|
generic_field_name_base = OM::XML::Terminology.term_generic_name(*term_pointer)
|
73
69
|
|
74
|
-
self.insert_field_value(solr_doc, term, generic_field_name_base, node_value,
|
70
|
+
self.insert_field_value(solr_doc, term, generic_field_name_base, node_value, field_mapper)
|
75
71
|
|
76
72
|
if term_pointer.length > 1
|
77
73
|
hierarchical_field_name_base = OM::XML::Terminology.term_hierarchical_name(*term_pointer)
|
78
|
-
self.insert_field_value(solr_doc, term, hierarchical_field_name_base, node_value,
|
74
|
+
self.insert_field_value(solr_doc, term, hierarchical_field_name_base, node_value, field_mapper)
|
79
75
|
end
|
80
76
|
if term.variant_of and term.variant_of[:field_base]
|
81
|
-
self.insert_field_value(solr_doc, term, term.variant_of[:field_base], node_value,
|
77
|
+
self.insert_field_value(solr_doc, term, term.variant_of[:field_base], node_value, field_mapper, true)
|
82
78
|
end
|
83
79
|
solr_doc
|
84
80
|
end
|
85
81
|
|
86
|
-
def self.insert_field_value(solr_doc, term, field_base_name, field_value,
|
82
|
+
def self.insert_field_value(solr_doc, term, field_base_name, field_value, field_mapper=nil , unique=false)
|
87
83
|
field_mapper = self.default_field_mapper if field_mapper.nil?
|
88
|
-
field_mapper.solr_names_and_values(field_base_name, field_value,
|
84
|
+
field_mapper.solr_names_and_values(field_base_name, field_value, term.type, term.index_as).each { |field_name, field_value|
|
89
85
|
unless field_value.join("").strip.empty?
|
90
86
|
if term.variant_of and term.variant_of[:map]
|
91
87
|
field_value = default_value_mapper.solr_value(term.variant_of[:map], field_value)
|
92
88
|
end
|
93
|
-
|
89
|
+
Cul::Scv::Hydra::Solrizer::Extractor.insert_solr_field_value(solr_doc, field_name, field_value, (unique || (field_name == 'text')))
|
94
90
|
end
|
95
91
|
}
|
96
92
|
end
|
@@ -0,0 +1,97 @@
|
|
1
|
+
APP_ROOT = File.expand_path("#{File.dirname(__FILE__)}/../../")
|
2
|
+
|
3
|
+
def filename_for_pid(pid)
|
4
|
+
pid.gsub(/\:/,'_') + '.xml'
|
5
|
+
end
|
6
|
+
|
7
|
+
def pid_for_filename(fname)
|
8
|
+
fname.sub(/\.xml$/,'').sub(/_/,':')
|
9
|
+
end
|
10
|
+
|
11
|
+
def cmodel_fixture(name)
|
12
|
+
path = File.join(APP_ROOT, 'fixtures','cmodels',name)
|
13
|
+
File.open(path, 'rb')
|
14
|
+
end
|
15
|
+
|
16
|
+
def each_cmodel
|
17
|
+
path = File.join(APP_ROOT, 'fixtures','cmodels')
|
18
|
+
Dir.new(path).each do |fname|
|
19
|
+
if fname =~ /\.xml$/
|
20
|
+
yield pid_for_filename(fname)
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
24
|
+
|
25
|
+
def config_subs
|
26
|
+
cfile = File.open(File.join(APP_ROOT,'config','subs.yml'))
|
27
|
+
YAML::load(cfile)[Rails.env]
|
28
|
+
end
|
29
|
+
|
30
|
+
def do_subs(orig)
|
31
|
+
content = orig.clone
|
32
|
+
config_subs.each do |key, val|
|
33
|
+
content.gsub!(/\$#{key.to_s}\$/, val)
|
34
|
+
end
|
35
|
+
content
|
36
|
+
end
|
37
|
+
|
38
|
+
def connection
|
39
|
+
# no need to go through AF for this except laziness re: finding the YAML
|
40
|
+
@connection ||= (ActiveFedora::Base.fedora_connection[0] ||= ActiveFedora::RubydoraConnection.new(ActiveFedora.config.credentials)).connection
|
41
|
+
end
|
42
|
+
|
43
|
+
def content_for(pid)
|
44
|
+
fname = filename_for_pid(pid)
|
45
|
+
fcontent = cmodel_fixture(fname).read
|
46
|
+
fcontent = do_subs(fcontent)
|
47
|
+
end
|
48
|
+
|
49
|
+
def load_content(content, pid)
|
50
|
+
connection.ingest(:file=>StringIO.new(content), :pid=>pid)
|
51
|
+
end
|
52
|
+
|
53
|
+
def purge(pid)
|
54
|
+
connection.purge_object :pid=>pid
|
55
|
+
end
|
56
|
+
|
57
|
+
def reload(pid)
|
58
|
+
fcontent = content_for(pid)
|
59
|
+
purge(pid)
|
60
|
+
load_content(fcontent, pid)
|
61
|
+
end
|
62
|
+
|
63
|
+
|
64
|
+
namespace :cul_scv_hydra do
|
65
|
+
namespace :cmodel do
|
66
|
+
task :test => :environment do
|
67
|
+
pid = ENV["PID"]
|
68
|
+
puts content_for(pid)
|
69
|
+
end
|
70
|
+
|
71
|
+
task :load => :environment do
|
72
|
+
pid = ENV["PID"]
|
73
|
+
load_content(content_for(pid),pid)
|
74
|
+
end
|
75
|
+
|
76
|
+
task :purge => :environment do
|
77
|
+
pid = ENV["PID"]
|
78
|
+
purge(pid)
|
79
|
+
end
|
80
|
+
|
81
|
+
task :reload => :environment do
|
82
|
+
pid = ENV["PID"]
|
83
|
+
reload(pid)
|
84
|
+
end
|
85
|
+
|
86
|
+
task :reload_all => :environment do
|
87
|
+
pattern = ENV["PATTERN"]
|
88
|
+
pattern = Regexp.compile(pattern) if pattern
|
89
|
+
each_cmodel do |pid|
|
90
|
+
unless (pattern and not pid =~ pattern)
|
91
|
+
puts "reloading #{pid}"
|
92
|
+
reload(pid)
|
93
|
+
end
|
94
|
+
end
|
95
|
+
end
|
96
|
+
end
|
97
|
+
end
|
metadata
CHANGED
@@ -1,192 +1,211 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cul_scv_hydra
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
5
|
-
prerelease:
|
4
|
+
version: 0.7.0
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- Benjamin Armintor
|
9
8
|
autorequire:
|
10
9
|
bindir: bin
|
11
10
|
cert_chain: []
|
12
|
-
date:
|
11
|
+
date: 2013-04-29 00:00:00.000000000 Z
|
13
12
|
dependencies:
|
14
13
|
- !ruby/object:Gem::Dependency
|
15
|
-
name:
|
16
|
-
requirement:
|
17
|
-
none: false
|
14
|
+
name: blacklight
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
18
16
|
requirements:
|
19
|
-
- -
|
17
|
+
- - ~>
|
20
18
|
- !ruby/object:Gem::Version
|
21
|
-
version:
|
19
|
+
version: 4.0.0
|
22
20
|
type: :runtime
|
23
21
|
prerelease: false
|
24
|
-
version_requirements:
|
25
|
-
- !ruby/object:Gem::Dependency
|
26
|
-
name: blacklight
|
27
|
-
requirement: &70137717918600 !ruby/object:Gem::Requirement
|
28
|
-
none: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
29
23
|
requirements:
|
30
24
|
- - ~>
|
31
25
|
- !ruby/object:Gem::Version
|
32
|
-
version:
|
33
|
-
type: :runtime
|
34
|
-
prerelease: false
|
35
|
-
version_requirements: *70137717918600
|
26
|
+
version: 4.0.0
|
36
27
|
- !ruby/object:Gem::Dependency
|
37
28
|
name: rails
|
38
|
-
requirement:
|
39
|
-
none: false
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
40
30
|
requirements:
|
41
31
|
- - ~>
|
42
32
|
- !ruby/object:Gem::Version
|
43
33
|
version: 3.2.5
|
44
34
|
type: :runtime
|
45
35
|
prerelease: false
|
46
|
-
version_requirements:
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - ~>
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: 3.2.5
|
47
41
|
- !ruby/object:Gem::Dependency
|
48
42
|
name: active-fedora
|
49
|
-
requirement:
|
50
|
-
none: false
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
51
44
|
requirements:
|
52
45
|
- - ~>
|
53
46
|
- !ruby/object:Gem::Version
|
54
|
-
version: '
|
47
|
+
version: '5.0'
|
55
48
|
type: :runtime
|
56
49
|
prerelease: false
|
57
|
-
version_requirements:
|
58
|
-
- !ruby/object:Gem::Dependency
|
59
|
-
name: active_fedora_finders
|
60
|
-
requirement: &70137717916000 !ruby/object:Gem::Requirement
|
61
|
-
none: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
62
51
|
requirements:
|
63
|
-
- -
|
52
|
+
- - ~>
|
64
53
|
- !ruby/object:Gem::Version
|
65
|
-
version: 0
|
66
|
-
type: :runtime
|
67
|
-
prerelease: false
|
68
|
-
version_requirements: *70137717916000
|
54
|
+
version: '5.0'
|
69
55
|
- !ruby/object:Gem::Dependency
|
70
|
-
name:
|
71
|
-
requirement:
|
72
|
-
none: false
|
56
|
+
name: hydra-head
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
73
58
|
requirements:
|
74
59
|
- - ~>
|
75
60
|
- !ruby/object:Gem::Version
|
76
|
-
version:
|
61
|
+
version: '5.2'
|
77
62
|
type: :runtime
|
78
63
|
prerelease: false
|
79
|
-
version_requirements:
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - ~>
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: '5.2'
|
80
69
|
- !ruby/object:Gem::Dependency
|
81
|
-
name:
|
82
|
-
requirement:
|
83
|
-
none: false
|
70
|
+
name: active_fedora_finders
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
84
72
|
requirements:
|
85
73
|
- - ! '>='
|
86
74
|
- !ruby/object:Gem::Version
|
87
|
-
version: 0.
|
75
|
+
version: 0.1.3
|
88
76
|
type: :runtime
|
89
77
|
prerelease: false
|
90
|
-
version_requirements:
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - ! '>='
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: 0.1.3
|
91
83
|
- !ruby/object:Gem::Dependency
|
92
|
-
name:
|
93
|
-
requirement:
|
94
|
-
none: false
|
84
|
+
name: active_fedora_relsint
|
85
|
+
requirement: !ruby/object:Gem::Requirement
|
95
86
|
requirements:
|
96
|
-
- -
|
87
|
+
- - ! '>='
|
97
88
|
- !ruby/object:Gem::Version
|
98
|
-
version: '
|
89
|
+
version: '0'
|
99
90
|
type: :runtime
|
100
91
|
prerelease: false
|
101
|
-
version_requirements:
|
92
|
+
version_requirements: !ruby/object:Gem::Requirement
|
93
|
+
requirements:
|
94
|
+
- - ! '>='
|
95
|
+
- !ruby/object:Gem::Version
|
96
|
+
version: '0'
|
102
97
|
- !ruby/object:Gem::Dependency
|
103
|
-
name:
|
104
|
-
requirement:
|
105
|
-
none: false
|
98
|
+
name: cul_image_props
|
99
|
+
requirement: !ruby/object:Gem::Requirement
|
106
100
|
requirements:
|
107
101
|
- - ! '>='
|
108
102
|
- !ruby/object:Gem::Version
|
109
|
-
version:
|
103
|
+
version: '0'
|
110
104
|
type: :runtime
|
111
105
|
prerelease: false
|
112
|
-
version_requirements:
|
106
|
+
version_requirements: !ruby/object:Gem::Requirement
|
107
|
+
requirements:
|
108
|
+
- - ! '>='
|
109
|
+
- !ruby/object:Gem::Version
|
110
|
+
version: '0'
|
113
111
|
- !ruby/object:Gem::Dependency
|
114
112
|
name: om
|
115
|
-
requirement:
|
116
|
-
none: false
|
113
|
+
requirement: !ruby/object:Gem::Requirement
|
117
114
|
requirements:
|
118
115
|
- - ~>
|
119
116
|
- !ruby/object:Gem::Version
|
120
|
-
version: 1.
|
117
|
+
version: '1.8'
|
121
118
|
type: :runtime
|
122
119
|
prerelease: false
|
123
|
-
version_requirements:
|
120
|
+
version_requirements: !ruby/object:Gem::Requirement
|
121
|
+
requirements:
|
122
|
+
- - ~>
|
123
|
+
- !ruby/object:Gem::Version
|
124
|
+
version: '1.8'
|
124
125
|
- !ruby/object:Gem::Dependency
|
125
126
|
name: solrizer
|
126
|
-
requirement:
|
127
|
-
none: false
|
127
|
+
requirement: !ruby/object:Gem::Requirement
|
128
128
|
requirements:
|
129
129
|
- - ~>
|
130
130
|
- !ruby/object:Gem::Version
|
131
|
-
version:
|
131
|
+
version: 2.0.0
|
132
132
|
type: :runtime
|
133
133
|
prerelease: false
|
134
|
-
version_requirements:
|
134
|
+
version_requirements: !ruby/object:Gem::Requirement
|
135
|
+
requirements:
|
136
|
+
- - ~>
|
137
|
+
- !ruby/object:Gem::Version
|
138
|
+
version: 2.0.0
|
135
139
|
- !ruby/object:Gem::Dependency
|
136
140
|
name: rspec
|
137
|
-
requirement:
|
138
|
-
none: false
|
141
|
+
requirement: !ruby/object:Gem::Requirement
|
139
142
|
requirements:
|
140
143
|
- - ~>
|
141
144
|
- !ruby/object:Gem::Version
|
142
145
|
version: 2.10.0
|
143
146
|
type: :development
|
144
147
|
prerelease: false
|
145
|
-
version_requirements:
|
148
|
+
version_requirements: !ruby/object:Gem::Requirement
|
149
|
+
requirements:
|
150
|
+
- - ~>
|
151
|
+
- !ruby/object:Gem::Version
|
152
|
+
version: 2.10.0
|
146
153
|
- !ruby/object:Gem::Dependency
|
147
154
|
name: rspec-rails
|
148
|
-
requirement:
|
149
|
-
none: false
|
155
|
+
requirement: !ruby/object:Gem::Requirement
|
150
156
|
requirements:
|
151
157
|
- - ~>
|
152
158
|
- !ruby/object:Gem::Version
|
153
159
|
version: 2.10.0
|
154
160
|
type: :development
|
155
161
|
prerelease: false
|
156
|
-
version_requirements:
|
162
|
+
version_requirements: !ruby/object:Gem::Requirement
|
163
|
+
requirements:
|
164
|
+
- - ~>
|
165
|
+
- !ruby/object:Gem::Version
|
166
|
+
version: 2.10.0
|
157
167
|
- !ruby/object:Gem::Dependency
|
158
168
|
name: mocha
|
159
|
-
requirement:
|
160
|
-
none: false
|
169
|
+
requirement: !ruby/object:Gem::Requirement
|
161
170
|
requirements:
|
162
|
-
- -
|
171
|
+
- - '='
|
163
172
|
- !ruby/object:Gem::Version
|
164
|
-
version: 0.
|
173
|
+
version: 0.12.7
|
165
174
|
type: :development
|
166
175
|
prerelease: false
|
167
|
-
version_requirements:
|
176
|
+
version_requirements: !ruby/object:Gem::Requirement
|
177
|
+
requirements:
|
178
|
+
- - '='
|
179
|
+
- !ruby/object:Gem::Version
|
180
|
+
version: 0.12.7
|
168
181
|
- !ruby/object:Gem::Dependency
|
169
182
|
name: equivalent-xml
|
170
|
-
requirement:
|
171
|
-
none: false
|
183
|
+
requirement: !ruby/object:Gem::Requirement
|
172
184
|
requirements:
|
173
185
|
- - ! '>='
|
174
186
|
- !ruby/object:Gem::Version
|
175
187
|
version: 0.2.4
|
176
188
|
type: :development
|
177
189
|
prerelease: false
|
178
|
-
version_requirements:
|
190
|
+
version_requirements: !ruby/object:Gem::Requirement
|
191
|
+
requirements:
|
192
|
+
- - ! '>='
|
193
|
+
- !ruby/object:Gem::Version
|
194
|
+
version: 0.2.4
|
179
195
|
- !ruby/object:Gem::Dependency
|
180
196
|
name: rbx-require-relative
|
181
|
-
requirement:
|
182
|
-
none: false
|
197
|
+
requirement: !ruby/object:Gem::Requirement
|
183
198
|
requirements:
|
184
199
|
- - ! '>='
|
185
200
|
- !ruby/object:Gem::Version
|
186
201
|
version: '0'
|
187
202
|
type: :development
|
188
203
|
prerelease: false
|
189
|
-
version_requirements:
|
204
|
+
version_requirements: !ruby/object:Gem::Requirement
|
205
|
+
requirements:
|
206
|
+
- - ! '>='
|
207
|
+
- !ruby/object:Gem::Version
|
208
|
+
version: '0'
|
190
209
|
description: ActiveFedora, OM, and Solrizer implementations for CUL Staff Collection
|
191
210
|
Viewer
|
192
211
|
email: armintor@gmail.com
|
@@ -230,43 +249,57 @@ files:
|
|
230
249
|
- lib/cul_scv_hydra/solrizer.rb
|
231
250
|
- lib/cul_scv_hydra/version.rb
|
232
251
|
- lib/cul_scv_hydra.rb
|
252
|
+
- lib/tasks/cmodel.rake
|
253
|
+
- app/assets/images/cul_scv_hydra/crystal/binary.png
|
254
|
+
- app/assets/images/cul_scv_hydra/crystal/document.png
|
255
|
+
- app/assets/images/cul_scv_hydra/crystal/file.png
|
256
|
+
- app/assets/images/cul_scv_hydra/crystal/file_broken.png
|
257
|
+
- app/assets/images/cul_scv_hydra/crystal/folder_documents.png
|
258
|
+
- app/assets/images/cul_scv_hydra/crystal/folder_images.png
|
259
|
+
- app/assets/images/cul_scv_hydra/crystal/folder_music.png
|
260
|
+
- app/assets/images/cul_scv_hydra/crystal/folder_sound.png
|
261
|
+
- app/assets/images/cul_scv_hydra/crystal/folder_video.png
|
262
|
+
- app/assets/images/cul_scv_hydra/crystal/kmultiple.png
|
263
|
+
- app/assets/images/cul_scv_hydra/crystal/knotify.png
|
264
|
+
- app/assets/images/cul_scv_hydra/crystal/mp3.png
|
265
|
+
- app/assets/images/cul_scv_hydra/crystal/multimedia2.png
|
266
|
+
- app/assets/images/cul_scv_hydra/crystal/video.png
|
233
267
|
- app/models/bag_aggregator.rb
|
234
268
|
- app/models/content_aggregator.rb
|
235
269
|
- app/models/dcdocument.rb
|
236
270
|
- app/models/generic_aggregator.rb
|
237
271
|
- app/models/generic_object.rb
|
272
|
+
- app/models/generic_resource.rb
|
238
273
|
- app/models/jp2_image_aggregator.rb
|
239
274
|
- app/models/mets_structured_aggregator.rb
|
240
275
|
- app/models/resource.rb
|
241
276
|
- app/models/static_audio_aggregator.rb
|
242
277
|
- app/models/static_image_aggregator.rb
|
243
|
-
- config/fedora.yml
|
244
278
|
- config/predicate_mappings.yml
|
245
|
-
- config/solr.yml
|
246
279
|
- config/solr_mappings.yml
|
247
280
|
- config/solr_value_maps.yml
|
281
|
+
- config/subs.yml
|
248
282
|
homepage: https://github.com/cul/cul_scv_hydra
|
249
283
|
licenses: []
|
284
|
+
metadata: {}
|
250
285
|
post_install_message:
|
251
286
|
rdoc_options: []
|
252
287
|
require_paths:
|
253
288
|
- lib
|
254
289
|
required_ruby_version: !ruby/object:Gem::Requirement
|
255
|
-
none: false
|
256
290
|
requirements:
|
257
291
|
- - ! '>='
|
258
292
|
- !ruby/object:Gem::Version
|
259
|
-
version:
|
293
|
+
version: 1.9.3
|
260
294
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
261
|
-
none: false
|
262
295
|
requirements:
|
263
296
|
- - ! '>='
|
264
297
|
- !ruby/object:Gem::Version
|
265
298
|
version: '0'
|
266
299
|
requirements: []
|
267
300
|
rubyforge_project:
|
268
|
-
rubygems_version:
|
301
|
+
rubygems_version: 2.0.3
|
269
302
|
signing_key:
|
270
|
-
specification_version:
|
303
|
+
specification_version: 4
|
271
304
|
summary: ActiveFedora, OM, and Solrizer implementations for CUL Staff Collection Viewer
|
272
305
|
test_files: []
|
data/config/fedora.yml
DELETED
@@ -1,12 +0,0 @@
|
|
1
|
-
development:
|
2
|
-
:url: http://127.0.0.1:8983/fedora
|
3
|
-
:user: fedoraAdmin
|
4
|
-
:password: fedoraAdmin
|
5
|
-
test:
|
6
|
-
:url: http://127.0.0.1:8983/fedora
|
7
|
-
:user: fedoraAdmin
|
8
|
-
:password: fedoraAdmin
|
9
|
-
default:
|
10
|
-
:url: http://127.0.0.1:8983/fedora
|
11
|
-
:user: fedoraAdmin
|
12
|
-
:password: fedoraAdmin
|