lyber-core 0.9.6.2 → 0.9.6.2.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,15 @@
1
+ ---
2
+ !binary "U0hBMQ==":
3
+ metadata.gz: !binary |-
4
+ MTk4OWM3ZjU4MzBjMWM4MWNkNjE5YjEzYjhiNmQ3NGZiNWU5MDkxNw==
5
+ data.tar.gz: !binary |-
6
+ MzdiOTUzNGVkYzhmZTBiMzE1MzdiZTFiZmU5ZjYyNzQ2NWY2OTBkMg==
7
+ SHA512:
8
+ metadata.gz: !binary |-
9
+ ZTQwMjNkYTBmN2RjYmQ1ODg2ODNhZDRlNzRmMGU0N2E4ZTZkZDYwY2E2NWQw
10
+ ZDY0YmNlNGU4MWM2MTdjMWY2ODZhNGE4ODc2ZDMxYmY5NjFkMDI3NGE4ZDY2
11
+ OTJhMDkxODM0Mzc2ZTc2Y2U1NGM0MDEzMmE4MzIxMjk2NWFhMWU=
12
+ data.tar.gz: !binary |-
13
+ N2NjOGRkZjM5ZDE3OTgzMDYwMTgwMjBkZjdiYjZjMTRhZDZhOTgwNmM4MjEx
14
+ ZDI2NmQ3MzMxOTUwMTdjZTNiNjk4MTdiNTkzNTBhMjNlZmM2NDFjY2VhMTY5
15
+ ZDZkM2MyZjExNTNjMjRkY2Y2OTk3MDUzZWQxY2Q5ZTUwNmE1YmQ=
@@ -1,15 +1,15 @@
1
1
 
2
2
  module Dor
3
-
3
+
4
4
  # Methods to create and update workflow
5
5
  #
6
6
  # ==== Required Constants
7
7
  # - Dor::CREATE_WORKFLOW : true or false. Can be used to turn of workflow in a particular environment, like development
8
8
  # - Dor::WF_URI : The URI to the workflow service. An example URI is 'http://lyberservices-dev.stanford.edu/workflow'
9
9
  module WorkflowService
10
-
10
+
11
11
  # Creates a workflow for a given object in the repository. If this particular workflow for this objects exists,
12
- # it will replace the old workflow with wf_xml passed to this method.
12
+ # it will replace the old workflow with wf_xml passed to this method.
13
13
  # Returns true on success. Caller must handle any exceptions
14
14
  #
15
15
  # == Parameters
@@ -17,26 +17,26 @@ module Dor
17
17
  # - <b>druid</b> - The id of the object
18
18
  # - <b>workflow_name</b> - The name of the workflow you want to create
19
19
  # - <b>wf_xml</b> - The xml that represents the workflow
20
- #
20
+ #
21
21
  def WorkflowService.create_workflow(repo, druid, workflow_name, wf_xml)
22
22
  return true unless(Dor::CREATE_WORKFLOW)
23
-
23
+
24
24
  full_uri = ''
25
25
  full_uri << Dor::WF_URI << '/' << repo << '/objects/' << druid << '/workflows/' << workflow_name
26
-
27
- # On success, an empty body is sent
26
+
27
+ # On success, an empty body is sent
28
28
  LyberCore::Connection.put(full_uri, wf_xml){|response| true}
29
29
  end
30
-
31
- # Updates the status of one step in a workflow.
30
+
31
+ # Updates the status of one step in a workflow.
32
32
  # Returns true on success. Caller must handle any exceptions
33
33
  #
34
34
  # == Required Parameters
35
35
  # - <b>repo</b> - The repository the object resides in. The service recoginzes "dor" and "sdr" at the moment
36
36
  # - <b>druid</b> - The id of the object
37
- # - <b>workflow_name</b> - The name of the workflow
37
+ # - <b>workflow_name</b> - The name of the workflow
38
38
  # - <b>status</b> - The status that you want to set. Typical statuses are 'waiting', 'completed', 'error', but could be any string
39
- #
39
+ #
40
40
  # == Optional Parameters
41
41
  # - <b>elapsed</b> - The number of seconds it took to complete this step. Can have a decimal. Is set to 0 if not passed in.
42
42
  # - <b>lifecycle</b> - Bookeeping label for this particular workflow step. Examples are: 'registered', 'shelved'
@@ -45,20 +45,21 @@ module Dor
45
45
  # The method does an HTTP PUT to the URL defined in Dor::WF_URI. As an example:
46
46
  # PUT "/dor/objects/pid:123/workflows/GoogleScannedWF/convert"
47
47
  # <process name=\"convert\" status=\"completed\" />"
48
- def WorkflowService.update_workflow_status(repo, druid, workflow, process, status, elapsed = 0, lifecycle = nil)
48
+ def WorkflowService.update_workflow_status(repo, druid, workflow, process, status, elapsed = 0, lifecycle = nil, note = nil)
49
49
  return true unless(Dor::CREATE_WORKFLOW)
50
-
50
+
51
51
  uri = ''
52
- uri << Dor::WF_URI << '/' << repo << '/objects/' << druid << '/workflows/' << workflow << '/' << process
53
- process_xml = '<process name="'+ process + '" status="' + status + '" '
52
+ uri << Dor::WF_URI << '/' << repo << '/objects/' << druid << '/workflows/' << workflow << '/' << process
53
+ process_xml = '<process name="'+ process + '" status="' + status + '" '
54
54
  process_xml << 'elapsed="' + elapsed.to_s + '" '
55
55
  process_xml << 'lifecycle="' + lifecycle + '" ' if(lifecycle)
56
- process_xml << '/>'
57
-
58
- # On success, an empty body is sent
56
+ process_xml << 'note="' + note + '" ' if(note)
57
+ process_xml << '/>'
58
+
59
+ # On success, an empty body is sent
59
60
  LyberCore::Connection.put(uri, process_xml) {|response| true}
60
61
  end
61
-
62
+
62
63
  #
63
64
  # Retrieves the process status of the given workflow for the given object identifier
64
65
  #
@@ -69,26 +70,26 @@ module Dor
69
70
 
70
71
  doc = Nokogiri::XML(workflow_md)
71
72
  raise Exception.new("Unable to parse response:\n#{workflow_md}") if(doc.root.nil?)
72
-
73
+
73
74
  status = doc.root.at_xpath("//process[@name='#{process}']/@status").content
74
75
  return status
75
76
  end
76
-
77
+
77
78
  def WorkflowService.get_workflow_xml(repo, druid, workflow)
78
79
  uri = ''
79
80
  uri << Dor::WF_URI << '/' << repo << '/objects/' << druid << '/workflows/' << workflow
80
81
  workflow_md = LyberCore::Connection.get(uri)
81
- end
82
+ end
82
83
 
83
- # Updates the status of one step in a workflow to error.
84
+ # Updates the status of one step in a workflow to error.
84
85
  # Returns true on success. Caller must handle any exceptions
85
86
  #
86
87
  # == Required Parameters
87
88
  # - <b>repo</b> - The repository the object resides in. The service recoginzes "dor" and "sdr" at the moment
88
89
  # - <b>druid</b> - The id of the object
89
- # - <b>workflow_name</b> - The name of the workflow
90
+ # - <b>workflow_name</b> - The name of the workflow
90
91
  # - <b>error_msg</b> - The error message. Ideally, this is a brief message describing the error
91
- #
92
+ #
92
93
  # == Optional Parameters
93
94
  # - <b>error_txt</b> - A slot to hold more information about the error, like a full stacktrace
94
95
  #
@@ -99,11 +100,11 @@ module Dor
99
100
  def WorkflowService.update_workflow_error_status(repo, druid, workflow, process, error_msg, error_txt = nil)
100
101
  uri = ''
101
102
  uri << Dor::WF_URI << '/' << repo << '/objects/' << druid << '/workflows/' << workflow << '/' << process
102
- process_xml = '<process name="'+ process + '" status="error" errorMessage="' + error_msg + '" '
103
+ process_xml = '<process name="'+ process + '" status="error" errorMessage="' + error_msg + '" '
103
104
  process_xml << 'errorText="' + error_txt + '" ' if(error_txt)
104
- process_xml << '/>'
105
-
106
- # On success, an empty body is sent
105
+ process_xml << '/>'
106
+
107
+ # On success, an empty body is sent
107
108
  LyberCore::Connection.put(uri, process_xml) {|response| true}
108
109
  end
109
110
 
@@ -1,4 +1,4 @@
1
- # == Usage
1
+ # == Usage
2
2
  # ruby_cl_skeleton [options] source_file
3
3
  #
4
4
  # For help use: ruby_cl_skeleton -h
@@ -13,9 +13,9 @@ module LyberCore
13
13
  class Robot
14
14
  attr_accessor :workflow_name
15
15
  attr_accessor :workflow_step
16
-
16
+
17
17
  # A LyberCore::Robots::Workflow object
18
- attr_accessor :workflow
18
+ attr_accessor :workflow
19
19
  attr_accessor :collection_name
20
20
  attr_accessor :workspace
21
21
  attr_accessor :args
@@ -23,7 +23,7 @@ module LyberCore
23
23
 
24
24
 
25
25
  # Available options
26
- # - :collection_name - The collection this workflow should work with.
26
+ # - :collection_name - The collection this workflow should work with.
27
27
  # Defined as a subdirectory within ROBOT_ROOT/config/workflows/your_workflow/your_collection
28
28
  # - :workspace - Full path of where to find content for a particular workflow
29
29
  # - :logfile - Where to write log messages
@@ -31,7 +31,7 @@ module LyberCore
31
31
  def initialize(workflow_name, workflow_step, args = {})
32
32
  @workflow_name = workflow_name
33
33
  @workflow_step = workflow_step
34
- @collection_name = args[:collection_name]
34
+ @collection_name = args[:collection_name]
35
35
  @opts = args
36
36
 
37
37
  if args[:logfile]
@@ -42,30 +42,30 @@ module LyberCore
42
42
  LyberCore::Log.set_logfile(robot_logfile)
43
43
  end
44
44
 
45
- LyberCore::Log.set_level(args[:loglevel]) if args[:loglevel]
46
-
45
+ LyberCore::Log.set_level(args[:loglevel]) if args[:loglevel]
46
+
47
47
  # Set defaults
48
48
  @options = OpenStruct.new
49
49
  self.parse_options
50
50
  self.create_workflow
51
51
  self.set_workspace
52
52
  end
53
-
53
+
54
54
  # Some workflows require a directory where their content lives
55
55
  # If a robot is invoked with a :workspace => true option, its @workspace
56
- # should be set from the value in
56
+ # should be set from the value in
57
57
  def set_workspace
58
58
  if(@opts[:workspace])
59
59
  @workspace = LyberCore::Robots::Workspace.new(@workflow_name, @collection_name)
60
60
  LyberCore::Log.debug("workspace = #{workspace.inspect}")
61
61
  end
62
62
  end
63
-
63
+
64
64
  # Create the workflow at instantiation, not when we start running the robot.
65
65
  # That way we can do better error checking and ensure that everything is going
66
66
  # to run okay before we actually start things.
67
67
  def create_workflow
68
-
68
+
69
69
  unless defined?(WORKFLOW_URI)
70
70
  LyberCore::Log.fatal "FATAL: WORKFLOW_URI is not defined"
71
71
  LyberCore::Log.fatal "Usually this is a value like 'http://lyberservices-dev.stanford.edu/workflow'"
@@ -75,17 +75,17 @@ module LyberCore
75
75
  LyberCore::Log.debug("About to instatiate a Workflow object
76
76
  -- LyberCore::Robots::Workflow.new(#{@workflow_name},#{collection_name}")
77
77
  @workflow = LyberCore::Robots::Workflow.new(@workflow_name, {:logger => @logger, :collection_name => @collection_name})
78
-
78
+
79
79
  end
80
-
81
- # == Create a new workflow
80
+
81
+ # == Create a new workflow
82
82
  def start()
83
-
83
+
84
84
  begin
85
85
  LyberCore::Log.debug("Starting robot...")
86
86
 
87
87
  queue = @workflow.queue(@workflow_step)
88
-
88
+
89
89
  # If we have arguments, parse out the parts that indicate druids
90
90
  if(@options.file or @options.druid)
91
91
  queue.enqueue_druids(get_druid_list)
@@ -100,21 +100,21 @@ module LyberCore
100
100
  rescue LyberCore::Exceptions::EmptyQueue
101
101
  LyberCore::Log.info("Empty queue -- no objects to process")
102
102
  rescue Exception => e
103
- LyberCore::Log.error(e.msg)
103
+ LyberCore::Log.error(e.message)
104
104
  LyberCore::Log.error(e.backtrace.join("\n"))
105
105
  end
106
106
  end
107
107
 
108
108
  # Generate a list of druids to process
109
109
  def get_druid_list
110
-
110
+
111
111
  druid_list = Array.new
112
-
112
+
113
113
  # append any druids passed explicitly
114
114
  if(@options.druid)
115
115
  druid_list << @options.druid
116
116
  end
117
-
117
+
118
118
  # identifier list is in a file
119
119
  if (@options.file && File.exist?(@options.file))
120
120
  File.open(@options.file) do |file|
@@ -126,7 +126,7 @@ module LyberCore
126
126
  end
127
127
  end
128
128
  end
129
-
129
+
130
130
  return druid_list
131
131
  end
132
132
 
@@ -144,18 +144,18 @@ module LyberCore
144
144
  end
145
145
  queue.print_stats()
146
146
  end
147
-
147
+
148
148
  # Override this method in your robot instance. The method in this base class will throw an exception if it is not overriden.
149
149
  def process_item(work_item)
150
150
  #to be overridden by child classes
151
151
  raise 'You must implement this method in your subclass'
152
- end
153
-
152
+ end
153
+
154
154
  # ###########################
155
- # command line option parsing
156
-
155
+ # command line option parsing
156
+
157
157
  def parse_options
158
-
158
+
159
159
  options = {}
160
160
 
161
161
  o = OptionParser.new do |opts|
@@ -165,50 +165,50 @@ module LyberCore
165
165
  opts.on("-d DRUID", "--druid DRUID", "Pass in a druid to process") do |d|
166
166
  @options.druid = d
167
167
  end
168
-
168
+
169
169
  opts.on("-f", "--file FILE", "Pass in a file of druids to process") do |f|
170
170
  @options.file = f
171
171
  end
172
-
172
+
173
173
  end
174
-
174
+
175
175
  # Parse the command line options and ignore anything not specified above
176
176
  begin
177
177
  o.parse!
178
178
  rescue OptionParser::InvalidOption => e
179
179
  LyberCore::Log.debug("e.inspect")
180
180
  rescue OptionParser::ParseError => e
181
- LyberCore::Log.error("Couldn't parse options: #{e.backtrace}")
181
+ LyberCore::Log.error("Couldn't parse options: #{e.backtrace}")
182
182
  raise e
183
183
  end
184
-
184
+
185
185
  end
186
186
 
187
187
  # def output_options
188
188
  # puts "Options:\n"
189
- #
190
- # @options.marshal_dump.each do |name, val|
189
+ #
190
+ # @options.marshal_dump.each do |name, val|
191
191
  # puts " #{name} = #{val}"
192
192
  # end
193
193
  # end
194
- #
194
+ #
195
195
  # def output_help
196
196
  # output_version
197
197
  # RDoc::usage() #exits app
198
198
  # end
199
- #
199
+ #
200
200
  # def output_usage
201
201
  # RDoc::usage('usage') # gets usage from comments above
202
202
  # end
203
- #
203
+ #
204
204
  # def output_version
205
205
  # puts "#{File.basename(__FILE__)} version #{VERSION}"
206
206
  # end
207
-
207
+
208
208
  # ##################################
209
- # end of command line option parsing
209
+ # end of command line option parsing
210
210
  # ##################################
211
-
211
+
212
212
  end # end of class
213
213
  end # end of Robots module
214
214
  end # end of LyberCore module
metadata CHANGED
@@ -1,16 +1,9 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: lyber-core
3
- version: !ruby/object:Gem::Version
4
- hash: 27
5
- prerelease: false
6
- segments:
7
- - 0
8
- - 9
9
- - 6
10
- - 2
11
- version: 0.9.6.2
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.9.6.2.3
12
5
  platform: ruby
13
- authors:
6
+ authors:
14
7
  - Alpana Pande
15
8
  - Bess Sadler
16
9
  - Chris Fitzpatrick
@@ -20,297 +13,278 @@ authors:
20
13
  autorequire:
21
14
  bindir: bin
22
15
  cert_chain: []
23
-
24
- date: 2010-12-14 00:00:00 -08:00
25
- default_executable:
26
- dependencies:
27
- - !ruby/object:Gem::Dependency
28
- requirement: &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"
37
- type: :runtime
16
+ date: 2014-11-11 00:00:00.000000000 Z
17
+ dependencies:
18
+ - !ruby/object:Gem::Dependency
38
19
  name: actionpack
20
+ requirement: !ruby/object:Gem::Requirement
21
+ requirements:
22
+ - - ! '>='
23
+ - !ruby/object:Gem::Version
24
+ version: '0'
25
+ type: :runtime
39
26
  prerelease: false
40
- version_requirements: *id001
41
- - !ruby/object:Gem::Dependency
42
- requirement: &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
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
52
38
  version: 1.2.6
53
39
  type: :runtime
54
- name: active-fedora
55
40
  prerelease: false
56
- version_requirements: *id002
57
- - !ruby/object:Gem::Dependency
58
- requirement: &id003 !ruby/object:Gem::Requirement
59
- none: false
60
- requirements:
61
- - - ">="
62
- - !ruby/object:Gem::Version
63
- hash: 27
64
- segments:
65
- - 0
66
- - 1
67
- - 0
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
68
52
  version: 0.1.0
69
53
  type: :runtime
70
- name: bagit
71
54
  prerelease: false
72
- version_requirements: *id003
73
- - !ruby/object:Gem::Dependency
74
- requirement: &id004 !ruby/object:Gem::Requirement
75
- none: false
76
- requirements:
77
- - - "="
78
- - !ruby/object:Gem::Version
79
- hash: 113
80
- segments:
81
- - 1
82
- - 4
83
- - 3
84
- - 1
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
85
66
  version: 1.4.3.1
86
67
  type: :runtime
87
- name: nokogiri
88
68
  prerelease: false
89
- version_requirements: *id004
90
- - !ruby/object:Gem::Dependency
91
- requirement: &id005 !ruby/object:Gem::Requirement
92
- none: false
93
- requirements:
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:
94
78
  - - <=
95
- - !ruby/object:Gem::Version
96
- hash: 9
97
- segments:
98
- - 3
99
- - 1
100
- - 5
79
+ - !ruby/object:Gem::Version
101
80
  version: 3.1.5
102
81
  type: :runtime
103
- name: roxml
104
82
  prerelease: false
105
- version_requirements: *id005
106
- - !ruby/object:Gem::Dependency
107
- requirement: &id006 !ruby/object:Gem::Requirement
108
- none: false
109
- requirements:
110
- - - ">="
111
- - !ruby/object:Gem::Version
112
- hash: 15
113
- segments:
114
- - 0
115
- - 0
116
- - 8
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
94
  version: 0.0.8
118
95
  type: :runtime
119
- name: solr-ruby
120
96
  prerelease: false
121
- version_requirements: *id006
122
- - !ruby/object:Gem::Dependency
123
- requirement: &id007 !ruby/object:Gem::Requirement
124
- none: false
125
- requirements:
126
- - - ">="
127
- - !ruby/object:Gem::Version
128
- hash: 17
129
- segments:
130
- - 0
131
- - 3
132
- - 1
133
- version: 0.3.1
134
- type: :runtime
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
135
103
  name: solrizer
104
+ requirement: !ruby/object:Gem::Requirement
105
+ requirements:
106
+ - - ~>
107
+ - !ruby/object:Gem::Version
108
+ version: '1.1'
109
+ type: :runtime
136
110
  prerelease: false
137
- version_requirements: *id007
138
- - !ruby/object:Gem::Dependency
139
- requirement: &id008 !ruby/object:Gem::Requirement
140
- none: false
141
- requirements:
142
- - - ">="
143
- - !ruby/object:Gem::Version
144
- hash: 31
145
- segments:
146
- - 1
147
- - 2
148
- - 0
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
149
122
  version: 1.2.0
150
123
  type: :runtime
151
- name: systemu
152
124
  prerelease: false
153
- version_requirements: *id008
154
- - !ruby/object:Gem::Dependency
155
- requirement: &id009 !ruby/object:Gem::Requirement
156
- none: false
157
- requirements:
158
- - - ">="
159
- - !ruby/object:Gem::Version
160
- hash: 3
161
- segments:
162
- - 0
163
- version: "0"
164
- type: :runtime
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
165
131
  name: validatable
132
+ requirement: !ruby/object:Gem::Requirement
133
+ requirements:
134
+ - - ! '>='
135
+ - !ruby/object:Gem::Version
136
+ version: '0'
137
+ type: :runtime
166
138
  prerelease: false
167
- version_requirements: *id009
168
- - !ruby/object:Gem::Dependency
169
- requirement: &id010 !ruby/object:Gem::Requirement
170
- none: false
171
- requirements:
172
- - - ">="
173
- - !ruby/object:Gem::Version
174
- hash: 3
175
- segments:
176
- - 0
177
- version: "0"
178
- type: :development
139
+ version_requirements: !ruby/object:Gem::Requirement
140
+ requirements:
141
+ - - ! '>='
142
+ - !ruby/object:Gem::Version
143
+ version: '0'
144
+ - !ruby/object:Gem::Dependency
179
145
  name: fakeweb
180
- prerelease: false
181
- version_requirements: *id010
182
- - !ruby/object:Gem::Dependency
183
- requirement: &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"
146
+ requirement: !ruby/object:Gem::Requirement
147
+ requirements:
148
+ - - ! '>='
149
+ - !ruby/object:Gem::Version
150
+ version: '0'
192
151
  type: :development
193
- name: haml
194
152
  prerelease: false
195
- version_requirements: *id011
196
- - !ruby/object:Gem::Dependency
197
- requirement: &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"
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'
206
165
  type: :development
166
+ 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
207
173
  name: pony
174
+ requirement: !ruby/object:Gem::Requirement
175
+ requirements:
176
+ - - ! '>='
177
+ - !ruby/object:Gem::Version
178
+ version: '0'
179
+ type: :development
208
180
  prerelease: false
209
- version_requirements: *id012
210
- - !ruby/object:Gem::Dependency
211
- requirement: &id013 !ruby/object:Gem::Requirement
212
- none: false
213
- requirements:
214
- - - ">="
215
- - !ruby/object:Gem::Version
216
- hash: 49
217
- segments:
218
- - 0
219
- - 8
220
- - 7
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
221
192
  version: 0.8.7
222
193
  type: :development
223
- name: rake
224
194
  prerelease: false
225
- version_requirements: *id013
226
- - !ruby/object:Gem::Dependency
227
- requirement: &id014 !ruby/object:Gem::Requirement
228
- none: false
229
- requirements:
230
- - - ">="
231
- - !ruby/object:Gem::Version
232
- hash: 3
233
- segments:
234
- - 0
235
- version: "0"
236
- type: :development
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
237
201
  name: rcov
238
- prerelease: false
239
- version_requirements: *id014
240
- - !ruby/object:Gem::Dependency
241
- requirement: &id015 !ruby/object:Gem::Requirement
242
- none: false
243
- requirements:
244
- - - ">="
245
- - !ruby/object:Gem::Version
246
- hash: 3
247
- segments:
248
- - 0
249
- version: "0"
202
+ requirement: !ruby/object:Gem::Requirement
203
+ requirements:
204
+ - - ! '>='
205
+ - !ruby/object:Gem::Version
206
+ version: '0'
250
207
  type: :development
208
+ 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
251
215
  name: rdoc
216
+ requirement: !ruby/object:Gem::Requirement
217
+ requirements:
218
+ - - ! '>='
219
+ - !ruby/object:Gem::Version
220
+ version: '0'
221
+ type: :development
252
222
  prerelease: false
253
- version_requirements: *id015
254
- - !ruby/object:Gem::Dependency
255
- requirement: &id016 !ruby/object:Gem::Requirement
256
- none: false
257
- requirements:
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:
258
232
  - - <
259
- - !ruby/object:Gem::Version
260
- hash: 3
261
- segments:
262
- - 2
263
- - 0
264
- version: "2.0"
233
+ - !ruby/object:Gem::Version
234
+ version: '2.0'
265
235
  type: :development
266
- name: rspec
267
236
  prerelease: false
268
- version_requirements: *id016
269
- - !ruby/object:Gem::Dependency
270
- requirement: &id017 !ruby/object:Gem::Requirement
271
- none: false
272
- requirements:
273
- - - ">="
274
- - !ruby/object:Gem::Version
275
- hash: 3
276
- segments:
277
- - 0
278
- version: "0"
279
- type: :development
237
+ version_requirements: !ruby/object:Gem::Requirement
238
+ requirements:
239
+ - - <
240
+ - !ruby/object:Gem::Version
241
+ version: '2.0'
242
+ - !ruby/object:Gem::Dependency
280
243
  name: ruby-debug
281
- prerelease: false
282
- version_requirements: *id017
283
- - !ruby/object:Gem::Dependency
284
- requirement: &id018 !ruby/object:Gem::Requirement
285
- none: false
286
- requirements:
287
- - - ">="
288
- - !ruby/object:Gem::Version
289
- hash: 3
290
- segments:
291
- - 0
292
- version: "0"
244
+ requirement: !ruby/object:Gem::Requirement
245
+ requirements:
246
+ - - ! '>='
247
+ - !ruby/object:Gem::Version
248
+ version: '0'
293
249
  type: :development
250
+ 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
294
257
  name: yard
258
+ requirement: !ruby/object:Gem::Requirement
259
+ requirements:
260
+ - - ! '>='
261
+ - !ruby/object:Gem::Version
262
+ version: '0'
263
+ type: :development
295
264
  prerelease: false
296
- version_requirements: *id018
297
- description: |-
298
- Contains classes to make http connections with a client-cert, use Jhove, and call Suri
299
- Also contains core classes to build robots
300
- email:
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:
301
275
  - wmene@stanford.edu
302
276
  executables: []
303
-
304
277
  extensions: []
305
-
306
278
  extra_rdoc_files: []
307
-
308
- files:
279
+ files:
280
+ - LICENSE
281
+ - README.rdoc
309
282
  - lib/dlss_service.rb
310
283
  - lib/dor/base.rb
311
284
  - lib/dor/suri_service.rb
312
285
  - lib/dor/workflow_service.rb
313
286
  - lib/dor_service.rb
287
+ - lib/lyber_core.rb
314
288
  - lib/lyber_core/connection.rb
315
289
  - lib/lyber_core/destroyer.rb
316
290
  - lib/lyber_core/exceptions/empty_queue.rb
@@ -321,51 +295,34 @@ files:
321
295
  - lib/lyber_core/robots/work_queue.rb
322
296
  - lib/lyber_core/robots/workflow.rb
323
297
  - lib/lyber_core/robots/workspace.rb
298
+ - lib/lyber_core/utils.rb
324
299
  - lib/lyber_core/utils/bagit_bag.rb
325
300
  - lib/lyber_core/utils/checksum_validate.rb
326
301
  - lib/lyber_core/utils/file_utilities.rb
327
- - lib/lyber_core/utils.rb
328
- - lib/lyber_core.rb
329
302
  - lib/roxml_models/identity_metadata/dublin_core.rb
330
303
  - lib/roxml_models/identity_metadata/identity_metadata.rb
331
304
  - lib/tasks/rdoc.rake
332
- - LICENSE
333
- - README.rdoc
334
- has_rdoc: true
335
305
  homepage: http://github.com/wmene/lyber-core
336
306
  licenses: []
337
-
307
+ metadata: {}
338
308
  post_install_message:
339
309
  rdoc_options: []
340
-
341
- require_paths:
310
+ require_paths:
342
311
  - lib
343
- required_ruby_version: !ruby/object:Gem::Requirement
344
- none: false
345
- requirements:
346
- - - ">="
347
- - !ruby/object:Gem::Version
348
- hash: 3
349
- segments:
350
- - 0
351
- version: "0"
352
- required_rubygems_version: !ruby/object:Gem::Requirement
353
- none: false
354
- requirements:
355
- - - ">="
356
- - !ruby/object:Gem::Version
357
- hash: 23
358
- segments:
359
- - 1
360
- - 3
361
- - 6
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
362
321
  version: 1.3.6
363
322
  requirements: []
364
-
365
323
  rubyforge_project:
366
- rubygems_version: 1.3.7
324
+ rubygems_version: 2.4.3
367
325
  signing_key:
368
- specification_version: 3
326
+ specification_version: 4
369
327
  summary: Core services used by the SULAIR Digital Library
370
328
  test_files: []
371
-