cul_hydra 1.0.6 → 1.0.7
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
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 01f266d6762f6bf8a2ce0d8c498a2fa414ac775d
|
4
|
+
data.tar.gz: b307b9f693f468d48c3b503332b9df090428cf40
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 9a7d2446ef89b32a22d2e14945fb104fff5be8c1cd12562ab7e128fa90c5e09708c72a0a9d198ac37fa8b833f21cd8e972f383a267614de38b8337de5e5c5d6a
|
7
|
+
data.tar.gz: 3a1a0fb360f335f9138abbc0827b0339347023405980536002515ddfcf4496c4866d2eddef81eee782e03b6151c515e77e04cff13c4c48b30d4e34cb3e634f5b
|
@@ -156,7 +156,9 @@ class StructMetadata < ::ActiveFedora::Datastream
|
|
156
156
|
current = node
|
157
157
|
labels = []
|
158
158
|
while (current.name == 'div')
|
159
|
-
|
159
|
+
label = URI.escape(current['LABEL'])
|
160
|
+
label = URI.escape(current['ORDER']) if label.blank?
|
161
|
+
labels.unshift label
|
160
162
|
current = current.parent
|
161
163
|
end
|
162
164
|
labels
|
@@ -0,0 +1,4 @@
|
|
1
|
+
<mets:structMap xmlns:mets="http://www.loc.gov/METS/">
|
2
|
+
<mets:div CONTENTIDS="apt://columbia.edu/columbia.jay/data/jjbw/01026/01026001.tif" ORDER="1" LABEL=""/>
|
3
|
+
<mets:div CONTENTIDS="apt://columbia.edu/columbia.jay/data/jjbw/01026/01026002.tif" ORDER="2" LABEL=""/>
|
4
|
+
</mets:structMap>
|
data/lib/cul_hydra/version.rb
CHANGED
data/lib/cul_hydra/version.rb~
CHANGED
data/lib/tasks/index.rake
CHANGED
@@ -1,3 +1,5 @@
|
|
1
|
+
require 'thread/pool'
|
2
|
+
|
1
3
|
namespace :cul_hydra do
|
2
4
|
|
3
5
|
namespace :index do
|
@@ -51,21 +53,58 @@ namespace :cul_hydra do
|
|
51
53
|
puts 'Please specify a project PID (e.g. PID=cul:123)'
|
52
54
|
next
|
53
55
|
end
|
56
|
+
|
57
|
+
if ENV['THREADS'].present?
|
58
|
+
thread_pool_size = ENV['THREADS'].to_i
|
59
|
+
puts "Number of threads: #{thread_pool_size}"
|
60
|
+
else
|
61
|
+
thread_pool_size = 1
|
62
|
+
puts "Number of threads: #{thread_pool_size}"
|
63
|
+
end
|
54
64
|
|
55
65
|
skip_generic_resources = (ENV['skip_generic_resources'] == 'true')
|
66
|
+
|
67
|
+
### Stop excessive ActiveFedora logging ###
|
68
|
+
# initialize the fedora connection if necessary
|
69
|
+
connection = (ActiveFedora::Base.fedora_connection[0] ||= ActiveFedora::RubydoraConnection.new(ActiveFedora.config.credentials)).connection
|
70
|
+
# the logger accessor is private
|
71
|
+
(connection.api.send :logger).level = Logger::INFO
|
56
72
|
|
57
73
|
start_time = Time.now
|
58
74
|
pids = Cul::Hydra::RisearchMembers.get_project_constituent_pids(project_pid, true)
|
59
75
|
total = pids.length
|
60
76
|
puts "Found #{total} project members."
|
61
77
|
counter = 0
|
78
|
+
|
79
|
+
# We run into autoloading issues when running in a multithreaded context,
|
80
|
+
# so we'll have the application eager load all classes now.
|
81
|
+
Rails.application.eager_load!
|
82
|
+
# Hack: Force load of classes that are giving autoload errors by referencing them below
|
83
|
+
BagAggregator.to_s
|
84
|
+
ContentAggregator.to_s
|
85
|
+
GenericResource.to_s
|
86
|
+
|
87
|
+
###########################################
|
88
|
+
pool = Thread.pool(thread_pool_size)
|
89
|
+
mutex = Mutex.new
|
62
90
|
|
63
91
|
pids.each do |pid|
|
64
|
-
|
65
|
-
|
66
|
-
|
92
|
+
pool.process {
|
93
|
+
|
94
|
+
Cul::Hydra::Indexer.index_pid(pid, skip_generic_resources, false)
|
95
|
+
|
96
|
+
mutex.synchronize do
|
97
|
+
counter += 1
|
98
|
+
puts "Indexed #{counter} of #{total} | #{Time.now - start_time} seconds"
|
99
|
+
end
|
100
|
+
}
|
67
101
|
end
|
68
102
|
|
103
|
+
pool.shutdown
|
104
|
+
###########################################
|
105
|
+
|
106
|
+
puts 'Done'
|
107
|
+
|
69
108
|
end
|
70
109
|
|
71
110
|
task :by_publish_target_pid => :environment do
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cul_hydra
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.7
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Benjamin Armintor
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2015-
|
12
|
+
date: 2015-06-13 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: blacklight
|
@@ -137,6 +137,20 @@ dependencies:
|
|
137
137
|
- - ">="
|
138
138
|
- !ruby/object:Gem::Version
|
139
139
|
version: '0'
|
140
|
+
- !ruby/object:Gem::Dependency
|
141
|
+
name: thread
|
142
|
+
requirement: !ruby/object:Gem::Requirement
|
143
|
+
requirements:
|
144
|
+
- - ">="
|
145
|
+
- !ruby/object:Gem::Version
|
146
|
+
version: '0'
|
147
|
+
type: :runtime
|
148
|
+
prerelease: false
|
149
|
+
version_requirements: !ruby/object:Gem::Requirement
|
150
|
+
requirements:
|
151
|
+
- - ">="
|
152
|
+
- !ruby/object:Gem::Version
|
153
|
+
version: '0'
|
140
154
|
- !ruby/object:Gem::Dependency
|
141
155
|
name: rdf
|
142
156
|
requirement: !ruby/object:Gem::Requirement
|
@@ -432,6 +446,7 @@ files:
|
|
432
446
|
- fixtures/spec/STRUCTMAP/structmap-nested.xml
|
433
447
|
- fixtures/spec/STRUCTMAP/structmap-recto.xml
|
434
448
|
- fixtures/spec/STRUCTMAP/structmap-seq.xml
|
449
|
+
- fixtures/spec/STRUCTMAP/structmap-unlabeled-seq.xml
|
435
450
|
- fixtures/spec/STRUCTMAP/structmap-unordered-seq.xml
|
436
451
|
- lib/cul_hydra.rb
|
437
452
|
- lib/cul_hydra/access_controls_enforcement.rb
|