lyber-core 0.9.6.2.3 → 1.3.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,264 @@
1
+ require 'nokogiri'
2
+ #<identityMetadata>
3
+ # <objectId>druid:rt923jk342</objectId>
4
+ # <objectType>item</objectType>
5
+ # <objectLabel>google download barcode 36105049267078</objectLabel>
6
+ # <objectCreator>DOR</objectCreator>
7
+ # <citationTitle>Squirrels of North America</citationTitle>
8
+ # <citationCreator>Eder, Tamara, 1974-</citationCreator>
9
+ # <sourceId source="google">STANFORD_342837261527</sourceId>
10
+ # <otherId name="barcode">342837261527</otherId>
11
+ # <otherId name="catkey">129483625</otherId>
12
+ # <otherId name="uuid">7f3da130-7b02-11de-8a39-0800200c9a66</otherId>
13
+ # <agreementId>druid:yh72ms9133</agreementId>
14
+ # <tag>Google Books : Phase 1</tag>
15
+ # <tag>Google Books : Scan source STANFORD</tag>
16
+ #</identityMetadata>
17
+
18
+
19
+ # this just maps the #value method to return the "text", "source", "name" values form the hash
20
+ class SourceId
21
+ attr_accessor :source
22
+ attr_accessor :value
23
+
24
+ def xml_values
25
+ [self.value, {:source => self.source}]
26
+ end
27
+
28
+ def to_s
29
+ "#{self.source}:#{self.value}"
30
+ end
31
+
32
+ def empty?
33
+ (self.source.nil? || self.source.empty?) && (self.value.nil? || self.value.empty?)
34
+ end
35
+
36
+ end
37
+
38
+ class OtherId
39
+ attr_accessor :name
40
+ attr_accessor :value
41
+
42
+ def xml_values
43
+ [self.value, {:name => self.name}]
44
+ end
45
+
46
+ def to_s
47
+ "#{self.name}:#{self.value}"
48
+ end
49
+
50
+ def empty?
51
+ (self.name.nil? || self.name.empty?) && (self.value.nil? || self.value.empty?)
52
+ end
53
+
54
+ end
55
+
56
+ class Tag
57
+ attr_accessor :value
58
+
59
+ def xml_values
60
+ [self.value]
61
+ end
62
+ end
63
+
64
+
65
+ class IdentityMetadata
66
+
67
+
68
+
69
+ # these are single values
70
+ attr_accessor :objectId
71
+ attr_reader :sourceId, :tags
72
+ # these instance vars map to nodes in the identityMetadata XML
73
+ attr_accessor :objectTypes, :objectLabels, :objectCreators, :citationCreators, :citationTitle,
74
+ :otherIds, :agreementIds, :objectAdminClass
75
+ # this stores the xml string
76
+ attr_accessor :xml
77
+
78
+
79
+ def initialize(xml = nil)
80
+
81
+ @objectId, @citationTitle, @objectAdminClass = "", "", "" #there can only be one of these values
82
+ @sourceId = SourceId.new #there can be only one.
83
+ @otherIds, @tags = [], [] # this is an array that will be filled with OtherId and Tag objects
84
+ @objectTypes, @objectLabels, @objectCreators, @citationCreators, @agreementIds = [], [], [], [], [], []
85
+
86
+
87
+ # if the new is given an xml string, store that in the xml attr_accessor and don't rebuild.
88
+ # this will allow users to access the raw unprocessed XML string via @xml.
89
+ if xml.nil?
90
+ build_xml()
91
+ else
92
+ @xml = xml
93
+ end
94
+ end #def init
95
+
96
+ #this builds the xml based on the instance variables in the object. If it's a hash, this assumes that we want to
97
+ #use attributes ==> {"text"=> "7f3da130-7b02-11de-8a39-0800200c9a66", "name" => "uuid" }. If the instance var is
98
+ # an array, we assume we don't need attrs, so all values get put into the text node.
99
+ def build_xml()
100
+ builder = Nokogiri::XML::Builder.new do |xml|
101
+ xml.identityMetadata {
102
+ self.instance_variables.each do |var_name|
103
+ unless var_name == "@xml"
104
+ var = self.instance_variable_get(var_name)
105
+ tag_name = var_name[1..-1]
106
+ if var.is_a?(Array)
107
+ tag_name.chomp!('s')
108
+ end
109
+ # wrap the singleton properties in a one-element array
110
+ var = [var] unless var.respond_to?(:each)
111
+ var.each do |v|
112
+ if v.respond_to?(:xml_values)
113
+ unless (v.respond_to?(:empty?) && v.empty?)
114
+ xml.send(tag_name, *(v.xml_values))
115
+ end
116
+ else
117
+ xml.send(tag_name, v.to_s)
118
+ end
119
+ end #var.each
120
+ end #unless
121
+ end #instance_variables.each
122
+ }
123
+ end
124
+ @xml = builder.to_xml
125
+ end
126
+
127
+ # This method rebuilds the xml attr_accesor and returns it as a string.
128
+ def to_xml
129
+ build_xml
130
+ return self.xml
131
+ end #to_xml
132
+
133
+ #
134
+ # The following methods are convience methods
135
+ #
136
+
137
+
138
+ # Add a new tag to the IdentityMetadata instance
139
+ def add_tag(new_tag_value)
140
+ # Make sure tag is not already present
141
+ unless self.get_tags.include?(new_tag_value)
142
+ tag = Tag.new
143
+ tag.value = new_tag_value
144
+ self.tags << tag
145
+ end
146
+ return self.get_tags
147
+ end
148
+
149
+ alias :tag :add_tag
150
+
151
+ # Returns an array of tag values
152
+ def get_tags()
153
+ self.tags.collect { |t| t.value }
154
+ end
155
+
156
+ # Convenience method to return the first agreementId. There's usually only one.
157
+ # Returns nil if there are no agreementIds.
158
+ def agreementId
159
+ @agreementIds.first
160
+ end
161
+
162
+
163
+ # Return the OtherId hash for the specified identier name
164
+ def get_other_id(name)
165
+ self.otherIds.each do |oi|
166
+ if oi.name == name
167
+ return oi
168
+ end
169
+ end
170
+ return nil
171
+ end
172
+
173
+ # Return the identifier value for the specified identier name
174
+ def get_identifier_value(key)
175
+ other_id = self.get_other_id(key)
176
+ if other_id != nil && other_id.value != nil
177
+ return other_id.value
178
+ end
179
+ raise "No #{key} indentifier found for druid #{@objectId}"
180
+ end
181
+
182
+ # Add a new name,value pair to the set of identifiers
183
+ def add_identifier(*args)
184
+ (key,value) = args
185
+ if value.nil? and key =~ /:/
186
+ (key,value) = key.split(/:/,2)
187
+ end
188
+
189
+ other_id = self.get_other_id(key)
190
+ if (other_id != nil)
191
+ other_id.value = value
192
+ else
193
+ other_id = OtherId.new
194
+ other_id.name = key
195
+ other_id.value = value
196
+ self.otherIds << other_id
197
+ end
198
+ end
199
+
200
+ def sourceId=(*args)
201
+ (source,value) = args
202
+ if value.nil? and source =~ /:/
203
+ (source,value) = source.split(/:/,2)
204
+ end
205
+
206
+ self.sourceId.source = source
207
+ self.sourceId.value = value
208
+ end
209
+
210
+ # Return an array of strings where each entry consists of name:value
211
+ def get_id_pairs
212
+ pairs=Array.new
213
+ self.otherIds.collect do |other_id|
214
+ other_id.to_s
215
+ end
216
+ end
217
+
218
+ #another convience method to allow citationCreator=
219
+ def citationCreator=(creator)
220
+ if creator.is_a?(Array)
221
+ self.citationCreators = creator
222
+ elsif creator.is_a?(String)
223
+ self.citationCreators = [creator]
224
+ else
225
+ raise "Identity_metadata.citationCreator requires either a string or array. "
226
+ end
227
+ end
228
+
229
+ #takes a string of XML and constructs the object with all the instance variables added to the correct location.
230
+ def self.from_xml(xml="")
231
+ if xml.is_a?(File)
232
+ xml = xml.read
233
+ end
234
+
235
+ im = self.new(xml)
236
+ doc = Nokogiri::XML(xml)
237
+
238
+ children = doc.root.element_children #iterate through the nodes and map them to instance vars in the object.
239
+ children.each do |c|
240
+ if im.instance_variables.include?("@#{c.name}") or im.instance_variables.include?("@#{c.name}s")
241
+ if c.name == "sourceId" #SourceID already has a SourceID object made
242
+ im.sourceId.source = c["source"]
243
+ im.sourceId.value = c.text.strip
244
+ elsif c.name == "otherId" #otherID needs to be cast as an object and stored in an array
245
+ im.add_identifier(c['name'],c.text.strip)
246
+ elsif c.name == "tag" #tags also need to have objects created and stored in an array
247
+ im.add_tag(c.text.strip)
248
+ elsif c.name == "objectId" # objectId needs to be mapped to objectId attr_access
249
+ im.objectId = c.text.strip
250
+ elsif c.name == "citationTitle" #citationTitle also needs to be mapped to citationTitle attr_accessor
251
+ im.citationTitle = c.text.strip
252
+ elsif c.name == "objectAdminClass" #objectAdminClass also needs to be mapped to objectAdminClass attr_accessor
253
+ im.objectAdminClass = c.text.strip
254
+ else # everything else gets put into an attr_accessor array (note the added 's' on the attr_accessor.)
255
+ im.send("#{c.name}s").send("<<", c.text.strip)
256
+ end #if
257
+ end #if
258
+ end #each
259
+
260
+ return im
261
+
262
+ end #from_xml
263
+
264
+ end #class IdentityMetadata
metadata CHANGED
@@ -1,328 +1,417 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: lyber-core
3
- version: !ruby/object:Gem::Version
4
- version: 0.9.6.2.3
3
+ version: !ruby/object:Gem::Version
4
+ hash: 27
5
+ prerelease:
6
+ segments:
7
+ - 1
8
+ - 3
9
+ - 0
10
+ version: 1.3.0
5
11
  platform: ruby
6
- authors:
12
+ authors:
7
13
  - Alpana Pande
8
14
  - Bess Sadler
9
15
  - Chris Fitzpatrick
10
16
  - Douglas Kim
11
17
  - Richard Anderson
12
18
  - Willy Mene
19
+ - Michael Klein
13
20
  autorequire:
14
21
  bindir: bin
15
22
  cert_chain: []
16
- date: 2014-11-11 00:00:00.000000000 Z
17
- dependencies:
18
- - !ruby/object:Gem::Dependency
19
- name: actionpack
20
- requirement: !ruby/object:Gem::Requirement
21
- requirements:
22
- - - ! '>='
23
- - !ruby/object:Gem::Version
24
- version: '0'
25
- type: :runtime
23
+
24
+ date: 2011-07-21 00:00:00 -07:00
25
+ default_executable:
26
+ dependencies:
27
+ - !ruby/object:Gem::Dependency
28
+ version_requirements: &id001 !ruby/object:Gem::Requirement
29
+ none: false
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ hash: 3
34
+ segments:
35
+ - 0
36
+ version: "0"
26
37
  prerelease: false
27
- version_requirements: !ruby/object:Gem::Requirement
28
- requirements:
29
- - - ! '>='
30
- - !ruby/object:Gem::Version
31
- version: '0'
32
- - !ruby/object:Gem::Dependency
33
- name: active-fedora
34
- requirement: !ruby/object:Gem::Requirement
35
- requirements:
36
- - - '='
37
- - !ruby/object:Gem::Version
38
+ type: :runtime
39
+ requirement: *id001
40
+ name: actionpack
41
+ - !ruby/object:Gem::Dependency
42
+ version_requirements: &id002 !ruby/object:Gem::Requirement
43
+ none: false
44
+ requirements:
45
+ - - ">="
46
+ - !ruby/object:Gem::Version
47
+ hash: 19
48
+ segments:
49
+ - 1
50
+ - 2
51
+ - 6
38
52
  version: 1.2.6
53
+ prerelease: false
39
54
  type: :runtime
55
+ requirement: *id002
56
+ name: active-fedora
57
+ - !ruby/object:Gem::Dependency
58
+ version_requirements: &id003 !ruby/object:Gem::Requirement
59
+ none: false
60
+ requirements:
61
+ - - ">="
62
+ - !ruby/object:Gem::Version
63
+ hash: 3
64
+ segments:
65
+ - 0
66
+ version: "0"
40
67
  prerelease: false
41
- version_requirements: !ruby/object:Gem::Requirement
42
- requirements:
43
- - - '='
44
- - !ruby/object:Gem::Version
45
- version: 1.2.6
46
- - !ruby/object:Gem::Dependency
47
- name: bagit
48
- requirement: !ruby/object:Gem::Requirement
49
- requirements:
50
- - - ! '>='
51
- - !ruby/object:Gem::Version
52
- version: 0.1.0
53
68
  type: :runtime
69
+ requirement: *id003
70
+ name: daemons
71
+ - !ruby/object:Gem::Dependency
72
+ version_requirements: &id004 !ruby/object:Gem::Requirement
73
+ none: false
74
+ requirements:
75
+ - - ">="
76
+ - !ruby/object:Gem::Version
77
+ hash: 19
78
+ segments:
79
+ - 0
80
+ - 3
81
+ - 0
82
+ version: 0.3.0
54
83
  prerelease: false
55
- version_requirements: !ruby/object:Gem::Requirement
56
- requirements:
57
- - - ! '>='
58
- - !ruby/object:Gem::Version
59
- version: 0.1.0
60
- - !ruby/object:Gem::Dependency
61
- name: nokogiri
62
- requirement: !ruby/object:Gem::Requirement
63
- requirements:
64
- - - '='
65
- - !ruby/object:Gem::Version
66
- version: 1.4.3.1
67
84
  type: :runtime
85
+ requirement: *id004
86
+ name: dor-services
87
+ - !ruby/object:Gem::Dependency
88
+ version_requirements: &id005 !ruby/object:Gem::Requirement
89
+ none: false
90
+ requirements:
91
+ - - ">="
92
+ - !ruby/object:Gem::Version
93
+ hash: 27
94
+ segments:
95
+ - 0
96
+ - 1
97
+ - 0
98
+ version: 0.1.0
68
99
  prerelease: false
69
- version_requirements: !ruby/object:Gem::Requirement
70
- requirements:
71
- - - '='
72
- - !ruby/object:Gem::Version
73
- version: 1.4.3.1
74
- - !ruby/object:Gem::Dependency
75
- name: roxml
76
- requirement: !ruby/object:Gem::Requirement
77
- requirements:
78
- - - <=
79
- - !ruby/object:Gem::Version
80
- version: 3.1.5
81
100
  type: :runtime
101
+ requirement: *id005
102
+ name: bagit
103
+ - !ruby/object:Gem::Dependency
104
+ version_requirements: &id006 !ruby/object:Gem::Requirement
105
+ none: false
106
+ requirements:
107
+ - - "="
108
+ - !ruby/object:Gem::Version
109
+ hash: 113
110
+ segments:
111
+ - 1
112
+ - 4
113
+ - 3
114
+ - 1
115
+ version: 1.4.3.1
82
116
  prerelease: false
83
- version_requirements: !ruby/object:Gem::Requirement
84
- requirements:
85
- - - <=
86
- - !ruby/object:Gem::Version
87
- version: 3.1.5
88
- - !ruby/object:Gem::Dependency
89
- name: solr-ruby
90
- requirement: !ruby/object:Gem::Requirement
91
- requirements:
92
- - - ! '>='
93
- - !ruby/object:Gem::Version
117
+ type: :runtime
118
+ requirement: *id006
119
+ name: nokogiri
120
+ - !ruby/object:Gem::Dependency
121
+ version_requirements: &id007 !ruby/object:Gem::Requirement
122
+ none: false
123
+ requirements:
124
+ - - ">="
125
+ - !ruby/object:Gem::Version
126
+ hash: 15
127
+ segments:
128
+ - 0
129
+ - 0
130
+ - 8
94
131
  version: 0.0.8
132
+ prerelease: false
95
133
  type: :runtime
134
+ requirement: *id007
135
+ name: solr-ruby
136
+ - !ruby/object:Gem::Dependency
137
+ version_requirements: &id008 !ruby/object:Gem::Requirement
138
+ none: false
139
+ requirements:
140
+ - - ">="
141
+ - !ruby/object:Gem::Version
142
+ hash: 17
143
+ segments:
144
+ - 0
145
+ - 3
146
+ - 1
147
+ version: 0.3.1
96
148
  prerelease: false
97
- version_requirements: !ruby/object:Gem::Requirement
98
- requirements:
99
- - - ! '>='
100
- - !ruby/object:Gem::Version
101
- version: 0.0.8
102
- - !ruby/object:Gem::Dependency
103
- name: solrizer
104
- requirement: !ruby/object:Gem::Requirement
105
- requirements:
106
- - - ~>
107
- - !ruby/object:Gem::Version
108
- version: '1.1'
109
149
  type: :runtime
150
+ requirement: *id008
151
+ name: solrizer
152
+ - !ruby/object:Gem::Dependency
153
+ version_requirements: &id009 !ruby/object:Gem::Requirement
154
+ none: false
155
+ requirements:
156
+ - - ">="
157
+ - !ruby/object:Gem::Version
158
+ hash: 3
159
+ segments:
160
+ - 0
161
+ version: "0"
110
162
  prerelease: false
111
- version_requirements: !ruby/object:Gem::Requirement
112
- requirements:
113
- - - ~>
114
- - !ruby/object:Gem::Version
115
- version: '1.1'
116
- - !ruby/object:Gem::Dependency
117
- name: systemu
118
- requirement: !ruby/object:Gem::Requirement
119
- requirements:
120
- - - ! '>='
121
- - !ruby/object:Gem::Version
163
+ type: :runtime
164
+ requirement: *id009
165
+ name: stomp
166
+ - !ruby/object:Gem::Dependency
167
+ version_requirements: &id010 !ruby/object:Gem::Requirement
168
+ none: false
169
+ requirements:
170
+ - - ">="
171
+ - !ruby/object:Gem::Version
172
+ hash: 31
173
+ segments:
174
+ - 1
175
+ - 2
176
+ - 0
122
177
  version: 1.2.0
178
+ prerelease: false
123
179
  type: :runtime
180
+ requirement: *id010
181
+ name: systemu
182
+ - !ruby/object:Gem::Dependency
183
+ version_requirements: &id011 !ruby/object:Gem::Requirement
184
+ none: false
185
+ requirements:
186
+ - - ">="
187
+ - !ruby/object:Gem::Version
188
+ hash: 3
189
+ segments:
190
+ - 0
191
+ version: "0"
124
192
  prerelease: false
125
- version_requirements: !ruby/object:Gem::Requirement
126
- requirements:
127
- - - ! '>='
128
- - !ruby/object:Gem::Version
129
- version: 1.2.0
130
- - !ruby/object:Gem::Dependency
131
- name: validatable
132
- requirement: !ruby/object:Gem::Requirement
133
- requirements:
134
- - - ! '>='
135
- - !ruby/object:Gem::Version
136
- version: '0'
137
193
  type: :runtime
194
+ requirement: *id011
195
+ name: validatable
196
+ - !ruby/object:Gem::Dependency
197
+ version_requirements: &id012 !ruby/object:Gem::Requirement
198
+ none: false
199
+ requirements:
200
+ - - ">="
201
+ - !ruby/object:Gem::Version
202
+ hash: 3
203
+ segments:
204
+ - 0
205
+ version: "0"
138
206
  prerelease: false
139
- version_requirements: !ruby/object:Gem::Requirement
140
- requirements:
141
- - - ! '>='
142
- - !ruby/object:Gem::Version
143
- version: '0'
144
- - !ruby/object:Gem::Dependency
145
- name: fakeweb
146
- requirement: !ruby/object:Gem::Requirement
147
- requirements:
148
- - - ! '>='
149
- - !ruby/object:Gem::Version
150
- version: '0'
151
207
  type: :development
208
+ requirement: *id012
209
+ name: fakeweb
210
+ - !ruby/object:Gem::Dependency
211
+ version_requirements: &id013 !ruby/object:Gem::Requirement
212
+ none: false
213
+ requirements:
214
+ - - ">="
215
+ - !ruby/object:Gem::Version
216
+ hash: 3
217
+ segments:
218
+ - 0
219
+ version: "0"
152
220
  prerelease: false
153
- version_requirements: !ruby/object:Gem::Requirement
154
- requirements:
155
- - - ! '>='
156
- - !ruby/object:Gem::Version
157
- version: '0'
158
- - !ruby/object:Gem::Dependency
159
- name: haml
160
- requirement: !ruby/object:Gem::Requirement
161
- requirements:
162
- - - ! '>='
163
- - !ruby/object:Gem::Version
164
- version: '0'
165
221
  type: :development
222
+ requirement: *id013
223
+ name: haml
224
+ - !ruby/object:Gem::Dependency
225
+ version_requirements: &id014 !ruby/object:Gem::Requirement
226
+ none: false
227
+ requirements:
228
+ - - ">="
229
+ - !ruby/object:Gem::Version
230
+ hash: 25
231
+ segments:
232
+ - 0
233
+ - 1
234
+ - 1
235
+ version: 0.1.1
166
236
  prerelease: false
167
- version_requirements: !ruby/object:Gem::Requirement
168
- requirements:
169
- - - ! '>='
170
- - !ruby/object:Gem::Version
171
- version: '0'
172
- - !ruby/object:Gem::Dependency
173
- name: pony
174
- requirement: !ruby/object:Gem::Requirement
175
- requirements:
176
- - - ! '>='
177
- - !ruby/object:Gem::Version
178
- version: '0'
179
237
  type: :development
180
- prerelease: false
181
- version_requirements: !ruby/object:Gem::Requirement
182
- requirements:
183
- - - ! '>='
184
- - !ruby/object:Gem::Version
185
- version: '0'
186
- - !ruby/object:Gem::Dependency
187
- name: rake
188
- requirement: !ruby/object:Gem::Requirement
189
- requirements:
190
- - - ! '>='
191
- - !ruby/object:Gem::Version
238
+ requirement: *id014
239
+ name: lyberteam-devel
240
+ - !ruby/object:Gem::Dependency
241
+ version_requirements: &id015 !ruby/object:Gem::Requirement
242
+ none: false
243
+ requirements:
244
+ - - ">="
245
+ - !ruby/object:Gem::Version
246
+ hash: 49
247
+ segments:
248
+ - 0
249
+ - 8
250
+ - 7
192
251
  version: 0.8.7
193
- type: :development
194
252
  prerelease: false
195
- version_requirements: !ruby/object:Gem::Requirement
196
- requirements:
197
- - - ! '>='
198
- - !ruby/object:Gem::Version
199
- version: 0.8.7
200
- - !ruby/object:Gem::Dependency
201
- name: rcov
202
- requirement: !ruby/object:Gem::Requirement
203
- requirements:
204
- - - ! '>='
205
- - !ruby/object:Gem::Version
206
- version: '0'
207
253
  type: :development
254
+ requirement: *id015
255
+ name: rake
256
+ - !ruby/object:Gem::Dependency
257
+ version_requirements: &id016 !ruby/object:Gem::Requirement
258
+ none: false
259
+ requirements:
260
+ - - ">="
261
+ - !ruby/object:Gem::Version
262
+ hash: 3
263
+ segments:
264
+ - 0
265
+ version: "0"
208
266
  prerelease: false
209
- version_requirements: !ruby/object:Gem::Requirement
210
- requirements:
211
- - - ! '>='
212
- - !ruby/object:Gem::Version
213
- version: '0'
214
- - !ruby/object:Gem::Dependency
215
- name: rdoc
216
- requirement: !ruby/object:Gem::Requirement
217
- requirements:
218
- - - ! '>='
219
- - !ruby/object:Gem::Version
220
- version: '0'
221
267
  type: :development
268
+ requirement: *id016
269
+ name: rcov
270
+ - !ruby/object:Gem::Dependency
271
+ version_requirements: &id017 !ruby/object:Gem::Requirement
272
+ none: false
273
+ requirements:
274
+ - - ">="
275
+ - !ruby/object:Gem::Version
276
+ hash: 3
277
+ segments:
278
+ - 0
279
+ version: "0"
222
280
  prerelease: false
223
- version_requirements: !ruby/object:Gem::Requirement
224
- requirements:
225
- - - ! '>='
226
- - !ruby/object:Gem::Version
227
- version: '0'
228
- - !ruby/object:Gem::Dependency
229
- name: rspec
230
- requirement: !ruby/object:Gem::Requirement
231
- requirements:
281
+ type: :development
282
+ requirement: *id017
283
+ name: rdoc
284
+ - !ruby/object:Gem::Dependency
285
+ version_requirements: &id018 !ruby/object:Gem::Requirement
286
+ none: false
287
+ requirements:
232
288
  - - <
233
- - !ruby/object:Gem::Version
234
- version: '2.0'
289
+ - !ruby/object:Gem::Version
290
+ hash: 3
291
+ segments:
292
+ - 2
293
+ - 0
294
+ version: "2.0"
295
+ prerelease: false
235
296
  type: :development
297
+ requirement: *id018
298
+ name: rspec
299
+ - !ruby/object:Gem::Dependency
300
+ version_requirements: &id019 !ruby/object:Gem::Requirement
301
+ none: false
302
+ requirements:
303
+ - - ">="
304
+ - !ruby/object:Gem::Version
305
+ hash: 3
306
+ segments:
307
+ - 0
308
+ version: "0"
236
309
  prerelease: false
237
- version_requirements: !ruby/object:Gem::Requirement
238
- requirements:
239
- - - <
240
- - !ruby/object:Gem::Version
241
- version: '2.0'
242
- - !ruby/object:Gem::Dependency
243
- name: ruby-debug
244
- requirement: !ruby/object:Gem::Requirement
245
- requirements:
246
- - - ! '>='
247
- - !ruby/object:Gem::Version
248
- version: '0'
249
310
  type: :development
311
+ requirement: *id019
312
+ name: ruby-debug
313
+ - !ruby/object:Gem::Dependency
314
+ version_requirements: &id020 !ruby/object:Gem::Requirement
315
+ none: false
316
+ requirements:
317
+ - - ">="
318
+ - !ruby/object:Gem::Version
319
+ hash: 3
320
+ segments:
321
+ - 0
322
+ version: "0"
250
323
  prerelease: false
251
- version_requirements: !ruby/object:Gem::Requirement
252
- requirements:
253
- - - ! '>='
254
- - !ruby/object:Gem::Version
255
- version: '0'
256
- - !ruby/object:Gem::Dependency
257
- name: yard
258
- requirement: !ruby/object:Gem::Requirement
259
- requirements:
260
- - - ! '>='
261
- - !ruby/object:Gem::Version
262
- version: '0'
263
324
  type: :development
325
+ requirement: *id020
326
+ name: stompserver
327
+ - !ruby/object:Gem::Dependency
328
+ version_requirements: &id021 !ruby/object:Gem::Requirement
329
+ none: false
330
+ requirements:
331
+ - - ">="
332
+ - !ruby/object:Gem::Version
333
+ hash: 3
334
+ segments:
335
+ - 0
336
+ version: "0"
264
337
  prerelease: false
265
- version_requirements: !ruby/object:Gem::Requirement
266
- requirements:
267
- - - ! '>='
268
- - !ruby/object:Gem::Version
269
- version: '0'
270
- description: ! 'Contains classes to make http connections with a client-cert, use
271
- Jhove, and call Suri
272
-
273
- Also contains core classes to build robots'
274
- email:
338
+ type: :development
339
+ requirement: *id021
340
+ name: yard
341
+ description: |-
342
+ Contains classes to make http connections with a client-cert, use Jhove, and call Suri
343
+ Also contains core classes to build robots
344
+ email:
275
345
  - wmene@stanford.edu
276
346
  executables: []
347
+
277
348
  extensions: []
349
+
278
350
  extra_rdoc_files: []
279
- files:
280
- - LICENSE
281
- - README.rdoc
351
+
352
+ files:
282
353
  - lib/dlss_service.rb
283
- - lib/dor/base.rb
284
- - lib/dor/suri_service.rb
285
- - lib/dor/workflow_service.rb
286
354
  - lib/dor_service.rb
287
- - lib/lyber_core.rb
355
+ - lib/lyber_core/config.rb
288
356
  - lib/lyber_core/connection.rb
289
357
  - lib/lyber_core/destroyer.rb
358
+ - lib/lyber_core/exceptions/chained_error.rb
290
359
  - lib/lyber_core/exceptions/empty_queue.rb
360
+ - lib/lyber_core/exceptions/fatal_error.rb
361
+ - lib/lyber_core/exceptions/item_error.rb
362
+ - lib/lyber_core/exceptions/service_error.rb
291
363
  - lib/lyber_core/log.rb
292
- - lib/lyber_core/rake/dlss_release.rb
293
364
  - lib/lyber_core/robots/robot.rb
365
+ - lib/lyber_core/robots/service_controller.rb
294
366
  - lib/lyber_core/robots/work_item.rb
295
367
  - lib/lyber_core/robots/work_queue.rb
296
368
  - lib/lyber_core/robots/workflow.rb
297
369
  - lib/lyber_core/robots/workspace.rb
298
- - lib/lyber_core/utils.rb
299
370
  - lib/lyber_core/utils/bagit_bag.rb
300
371
  - lib/lyber_core/utils/checksum_validate.rb
301
372
  - lib/lyber_core/utils/file_utilities.rb
302
- - lib/roxml_models/identity_metadata/dublin_core.rb
303
- - lib/roxml_models/identity_metadata/identity_metadata.rb
373
+ - lib/lyber_core/utils.rb
374
+ - lib/lyber_core.rb
304
375
  - lib/tasks/rdoc.rake
376
+ - lib/xml_models/identity_metadata/dublin_core.rb
377
+ - lib/xml_models/identity_metadata/identity_metadata.rb
378
+ - LICENSE
379
+ - README.rdoc
380
+ has_rdoc: true
305
381
  homepage: http://github.com/wmene/lyber-core
306
382
  licenses: []
307
- metadata: {}
383
+
308
384
  post_install_message:
309
385
  rdoc_options: []
310
- require_paths:
386
+
387
+ require_paths:
311
388
  - lib
312
- required_ruby_version: !ruby/object:Gem::Requirement
313
- requirements:
314
- - - ! '>='
315
- - !ruby/object:Gem::Version
316
- version: '0'
317
- required_rubygems_version: !ruby/object:Gem::Requirement
318
- requirements:
319
- - - ! '>='
320
- - !ruby/object:Gem::Version
389
+ required_ruby_version: !ruby/object:Gem::Requirement
390
+ none: false
391
+ requirements:
392
+ - - ">="
393
+ - !ruby/object:Gem::Version
394
+ hash: 3
395
+ segments:
396
+ - 0
397
+ version: "0"
398
+ required_rubygems_version: !ruby/object:Gem::Requirement
399
+ none: false
400
+ requirements:
401
+ - - ">="
402
+ - !ruby/object:Gem::Version
403
+ hash: 23
404
+ segments:
405
+ - 1
406
+ - 3
407
+ - 6
321
408
  version: 1.3.6
322
409
  requirements: []
410
+
323
411
  rubyforge_project:
324
- rubygems_version: 2.4.3
412
+ rubygems_version: 1.5.2
325
413
  signing_key:
326
- specification_version: 4
414
+ specification_version: 3
327
415
  summary: Core services used by the SULAIR Digital Library
328
416
  test_files: []
417
+