dor-services 4.12.1 → 4.12.2

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,15 @@
1
- ---
2
- SHA512:
3
- data.tar.gz: b5f10595eee0cf942e6304ef8bba1e2dbcaebeb16cd9408a6153f4f9f7bcb9bd449c1afd47152c522a697377cf1d91cca1f5d278f8a4afb9b6737e1892632b97
4
- metadata.gz: 4727d0aa946e585c2b74660ce875dec0039ce84f9ed114ffe017ef25c1824ce0468afafc21b53640ff3ff302d49a63beb523f65d359bca7ed2a10193e82050f7
5
- SHA1:
6
- data.tar.gz: 2ca47c15cf934ebad0cd9c7570abb89bf540512e
7
- metadata.gz: b8729b89c6b6ef3984f92e7ede2ebebd54d411aa
1
+ ---
2
+ !binary "U0hBMQ==":
3
+ metadata.gz: !binary |-
4
+ MTI2ZjBkOTExNzRmMGZhNTlmYzNjOTg0MzUyYWFlMzAyYzMwMjMzMA==
5
+ data.tar.gz: !binary |-
6
+ MDNmMjQzNzU1YTBhYzIwMmJmNzcwNzEzNmUwNWUyYThjYzY2Njg1YQ==
7
+ SHA512:
8
+ metadata.gz: !binary |-
9
+ MjNmY2RhNmVkZGVkNTRjMWU3NzU4ZTlhZjY2OTkxMTg2ZmI5OWIxMGNhMTU5
10
+ M2QyYzE1OGM1MzA4NmNjY2M4ZDE3ZDY5ZDEwZDQwNmNkMmYyYWY5Y2UzYjNk
11
+ MWM4OTFkMDFlOWZjMzUwODM0MmU4NzBmMzI2OTllMGEyMDE5MTg=
12
+ data.tar.gz: !binary |-
13
+ MzQ0YzQ2OGQ5M2Q0NGQ1MmIwMzY0NjgzOGIwMmI3MDc3OGZmMGNiMTllZWQ1
14
+ YjlmZTQ4MzUyNmQ0NzZjYjgzNzI3MjY4ODFhZjZiZTUyZWM4MTJkMzM5NjAy
15
+ MTdhNGJiMGVlNGU4NmRhYTQzZjRmYzAzNjc1ZDVkODc1YjY4MTY=
@@ -139,8 +139,7 @@ module Dor
139
139
  autoload :ProvenanceMetadataService, 'dor/services/provenance_metadata_service'
140
140
  autoload :TechnicalMetadataService, 'dor/services/technical_metadata_service'
141
141
  autoload :MergeService, 'dor/services/merge_service'
142
- autoload :ResetWorkspaceService, 'dor/services/reset_workspace_service'
143
- autoload :CleanupResetService, 'dor/services/cleanup_reset_service'
142
+ autoload :ArchiveWorkspaceService, 'dor/services/archive_workspace_service'
144
143
 
145
144
  # Versioning Classes
146
145
  module Versioning
@@ -0,0 +1,19 @@
1
+ module Dor
2
+
3
+ # Rename the druid trees at the end of the accessionWF in order to be cleaned/deleted later.
4
+ class ArchiveWorkspaceService
5
+
6
+ def self.archive_workspace_druid_tree(druid, version, workspace_root)
7
+
8
+ druid_tree_path = DruidTools::Druid.new(druid, workspace_root).pathname.to_s
9
+
10
+ raise "The archived directory #{druid_tree_path}_v#{version} already existed." if File.exists?("#{druid_tree_path}_v#{version}")
11
+
12
+ if File.exists?(druid_tree_path)
13
+ FileUtils.mv(druid_tree_path, "#{druid_tree_path}_v#{version}")
14
+ end #Else is a truncated tree where we shouldn't do anything
15
+
16
+ end
17
+
18
+ end
19
+ end
@@ -18,13 +18,31 @@ module Dor
18
18
  cleanup_export(druid)
19
19
  end
20
20
 
21
+ # Tries to remove any exsitence of the object in our systems
22
+ # Does the following:
23
+ # - Removes item from Dor/Fedora/Solr
24
+ # - Removes content from dor workspace
25
+ # - Removes content from assembly workspace
26
+ # - Removes content from sdr export area
27
+ # - Removes content from stacks
28
+ # - Removes content from purl
29
+ # - Removes active workflows
30
+ # @param [String] druid id of the object you wish to remove
31
+ def self.nuke!(druid)
32
+ cleanup_by_druid druid
33
+ cleanup_stacks druid
34
+ cleanup_purl_doc_cache druid
35
+ remove_active_workflows druid
36
+ delete_from_dor druid
37
+ end
38
+
21
39
  # @param [String] druid The identifier for the object whose data is to be removed
22
40
  # @param [String] base The base directory to delete from
23
41
  # @return [void] remove the object's data files from the workspace area
24
42
  def self.cleanup_workspace_content(druid, base)
25
43
  DruidTools::Druid.new(druid, base).prune!
26
44
  end
27
-
45
+
28
46
  # @param [String] druid The identifier for the object whose data is to be removed
29
47
  # @return [void] remove copy of the data that was exported to preservation core
30
48
  def self.cleanup_export(druid)
@@ -42,24 +60,6 @@ module Dor
42
60
  pathname.rmtree if pathname.exist?
43
61
  end
44
62
 
45
- # Tries to remove any exsitence of the object in our systems
46
- # Does the following:
47
- # - Removes item from Dor/Fedora/Solr
48
- # - Removes content from dor workspace
49
- # - Removes content from assembly workspace
50
- # - Removes content from sdr export area
51
- # - Removes content from stacks
52
- # - Removes content from purl
53
- # - Removes active workflows
54
- # @param [String] druid id of the object you wish to remove
55
- def self.nuke!(druid)
56
- cleanup_by_druid druid
57
- cleanup_stacks druid
58
- cleanup_purl_doc_cache druid
59
- remove_active_workflows druid
60
- delete_from_dor druid
61
- end
62
-
63
63
  def self.cleanup_stacks(druid)
64
64
  DruidTools::StacksDruid.new(druid, Config.stacks.local_storage_root).prune!
65
65
  end
@@ -83,9 +83,7 @@ module Dor
83
83
  Dor::SearchService.solr.delete_by_id(pid)
84
84
  Dor::SearchService.solr.commit
85
85
  end
86
- end
87
-
88
- end
89
86
 
87
+ end
90
88
 
91
-
89
+ end
@@ -1,3 +1,3 @@
1
1
  module Dor
2
- VERSION = '4.12.1'
2
+ VERSION = '4.12.2'
3
3
  end
metadata CHANGED
@@ -1,9 +1,9 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: dor-services
3
- version: !ruby/object:Gem::Version
4
- version: 4.12.1
3
+ version: !ruby/object:Gem::Version
4
+ version: 4.12.2
5
5
  platform: ruby
6
- authors:
6
+ authors:
7
7
  - Michael Klein
8
8
  - Willy Mene
9
9
  - Chris Fitzpatrick
@@ -12,346 +12,477 @@ authors:
12
12
  autorequire:
13
13
  bindir: bin
14
14
  cert_chain: []
15
-
16
- date: 2014-07-18 00:00:00 Z
17
- dependencies:
18
- - !ruby/object:Gem::Dependency
15
+ date: 2014-07-25 00:00:00.000000000 Z
16
+ dependencies:
17
+ - !ruby/object:Gem::Dependency
19
18
  name: active-fedora
20
- prerelease: false
21
- requirement: &id001 !ruby/object:Gem::Requirement
22
- requirements:
19
+ requirement: !ruby/object:Gem::Requirement
20
+ requirements:
23
21
  - - ~>
24
- - !ruby/object:Gem::Version
22
+ - !ruby/object:Gem::Version
25
23
  version: 5.7.1
26
24
  type: :runtime
27
- version_requirements: *id001
28
- - !ruby/object:Gem::Dependency
29
- name: activesupport
30
25
  prerelease: false
31
- requirement: &id002 !ruby/object:Gem::Requirement
32
- requirements:
26
+ version_requirements: !ruby/object:Gem::Requirement
27
+ requirements:
28
+ - - ~>
29
+ - !ruby/object:Gem::Version
30
+ version: 5.7.1
31
+ - !ruby/object:Gem::Dependency
32
+ name: activesupport
33
+ requirement: !ruby/object:Gem::Requirement
34
+ requirements:
33
35
  - - ~>
34
- - !ruby/object:Gem::Version
35
- version: "3.2"
36
- - - ">="
37
- - !ruby/object:Gem::Version
36
+ - !ruby/object:Gem::Version
37
+ version: '3.2'
38
+ - - ! '>='
39
+ - !ruby/object:Gem::Version
38
40
  version: 3.2.18
39
41
  type: :runtime
40
- version_requirements: *id002
41
- - !ruby/object:Gem::Dependency
42
- name: confstruct
43
42
  prerelease: false
44
- requirement: &id003 !ruby/object:Gem::Requirement
45
- requirements:
43
+ version_requirements: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ~>
46
+ - !ruby/object:Gem::Version
47
+ version: '3.2'
48
+ - - ! '>='
49
+ - !ruby/object:Gem::Version
50
+ version: 3.2.18
51
+ - !ruby/object:Gem::Dependency
52
+ name: confstruct
53
+ requirement: !ruby/object:Gem::Requirement
54
+ requirements:
46
55
  - - ~>
47
- - !ruby/object:Gem::Version
56
+ - !ruby/object:Gem::Version
48
57
  version: 0.2.2
49
58
  type: :runtime
50
- version_requirements: *id003
51
- - !ruby/object:Gem::Dependency
52
- name: equivalent-xml
53
59
  prerelease: false
54
- requirement: &id004 !ruby/object:Gem::Requirement
55
- requirements:
60
+ version_requirements: !ruby/object:Gem::Requirement
61
+ requirements:
62
+ - - ~>
63
+ - !ruby/object:Gem::Version
64
+ version: 0.2.2
65
+ - !ruby/object:Gem::Dependency
66
+ name: equivalent-xml
67
+ requirement: !ruby/object:Gem::Requirement
68
+ requirements:
56
69
  - - ~>
57
- - !ruby/object:Gem::Version
70
+ - !ruby/object:Gem::Version
58
71
  version: 0.2.2
59
72
  type: :runtime
60
- version_requirements: *id004
61
- - !ruby/object:Gem::Dependency
62
- name: json
63
73
  prerelease: false
64
- requirement: &id005 !ruby/object:Gem::Requirement
65
- requirements:
74
+ version_requirements: !ruby/object:Gem::Requirement
75
+ requirements:
76
+ - - ~>
77
+ - !ruby/object:Gem::Version
78
+ version: 0.2.2
79
+ - !ruby/object:Gem::Dependency
80
+ name: json
81
+ requirement: !ruby/object:Gem::Requirement
82
+ requirements:
66
83
  - - ~>
67
- - !ruby/object:Gem::Version
84
+ - !ruby/object:Gem::Version
68
85
  version: 1.8.1
69
86
  type: :runtime
70
- version_requirements: *id005
71
- - !ruby/object:Gem::Dependency
72
- name: net-sftp
73
87
  prerelease: false
74
- requirement: &id006 !ruby/object:Gem::Requirement
75
- requirements:
88
+ version_requirements: !ruby/object:Gem::Requirement
89
+ requirements:
90
+ - - ~>
91
+ - !ruby/object:Gem::Version
92
+ version: 1.8.1
93
+ - !ruby/object:Gem::Dependency
94
+ name: net-sftp
95
+ requirement: !ruby/object:Gem::Requirement
96
+ requirements:
76
97
  - - ~>
77
- - !ruby/object:Gem::Version
98
+ - !ruby/object:Gem::Version
78
99
  version: 2.1.2
79
100
  type: :runtime
80
- version_requirements: *id006
81
- - !ruby/object:Gem::Dependency
82
- name: net-ssh
83
101
  prerelease: false
84
- requirement: &id007 !ruby/object:Gem::Requirement
85
- requirements:
102
+ version_requirements: !ruby/object:Gem::Requirement
103
+ requirements:
104
+ - - ~>
105
+ - !ruby/object:Gem::Version
106
+ version: 2.1.2
107
+ - !ruby/object:Gem::Dependency
108
+ name: net-ssh
109
+ requirement: !ruby/object:Gem::Requirement
110
+ requirements:
86
111
  - - ~>
87
- - !ruby/object:Gem::Version
112
+ - !ruby/object:Gem::Version
88
113
  version: 2.7.0
89
114
  type: :runtime
90
- version_requirements: *id007
91
- - !ruby/object:Gem::Dependency
92
- name: nokogiri
93
115
  prerelease: false
94
- requirement: &id008 !ruby/object:Gem::Requirement
95
- requirements:
116
+ version_requirements: !ruby/object:Gem::Requirement
117
+ requirements:
118
+ - - ~>
119
+ - !ruby/object:Gem::Version
120
+ version: 2.7.0
121
+ - !ruby/object:Gem::Dependency
122
+ name: nokogiri
123
+ requirement: !ruby/object:Gem::Requirement
124
+ requirements:
96
125
  - - ~>
97
- - !ruby/object:Gem::Version
126
+ - !ruby/object:Gem::Version
98
127
  version: 1.6.0
99
128
  type: :runtime
100
- version_requirements: *id008
101
- - !ruby/object:Gem::Dependency
102
- name: om
103
129
  prerelease: false
104
- requirement: &id009 !ruby/object:Gem::Requirement
105
- requirements:
130
+ version_requirements: !ruby/object:Gem::Requirement
131
+ requirements:
106
132
  - - ~>
107
- - !ruby/object:Gem::Version
133
+ - !ruby/object:Gem::Version
134
+ version: 1.6.0
135
+ - !ruby/object:Gem::Dependency
136
+ name: om
137
+ requirement: !ruby/object:Gem::Requirement
138
+ requirements:
139
+ - - ~>
140
+ - !ruby/object:Gem::Version
108
141
  version: 1.8.0
109
142
  type: :runtime
110
- version_requirements: *id009
111
- - !ruby/object:Gem::Dependency
112
- name: progressbar
113
143
  prerelease: false
114
- requirement: &id010 !ruby/object:Gem::Requirement
115
- requirements:
144
+ version_requirements: !ruby/object:Gem::Requirement
145
+ requirements:
146
+ - - ~>
147
+ - !ruby/object:Gem::Version
148
+ version: 1.8.0
149
+ - !ruby/object:Gem::Dependency
150
+ name: progressbar
151
+ requirement: !ruby/object:Gem::Requirement
152
+ requirements:
116
153
  - - ~>
117
- - !ruby/object:Gem::Version
154
+ - !ruby/object:Gem::Version
118
155
  version: 0.21.0
119
156
  type: :runtime
120
- version_requirements: *id010
121
- - !ruby/object:Gem::Dependency
122
- name: rdf
123
157
  prerelease: false
124
- requirement: &id011 !ruby/object:Gem::Requirement
125
- requirements:
158
+ version_requirements: !ruby/object:Gem::Requirement
159
+ requirements:
160
+ - - ~>
161
+ - !ruby/object:Gem::Version
162
+ version: 0.21.0
163
+ - !ruby/object:Gem::Dependency
164
+ name: rdf
165
+ requirement: !ruby/object:Gem::Requirement
166
+ requirements:
126
167
  - - ~>
127
- - !ruby/object:Gem::Version
168
+ - !ruby/object:Gem::Version
128
169
  version: 1.0.9.0
129
170
  type: :runtime
130
- version_requirements: *id011
131
- - !ruby/object:Gem::Dependency
132
- name: rest-client
133
171
  prerelease: false
134
- requirement: &id012 !ruby/object:Gem::Requirement
135
- requirements:
172
+ version_requirements: !ruby/object:Gem::Requirement
173
+ requirements:
174
+ - - ~>
175
+ - !ruby/object:Gem::Version
176
+ version: 1.0.9.0
177
+ - !ruby/object:Gem::Dependency
178
+ name: rest-client
179
+ requirement: !ruby/object:Gem::Requirement
180
+ requirements:
136
181
  - - ~>
137
- - !ruby/object:Gem::Version
182
+ - !ruby/object:Gem::Version
138
183
  version: 1.6.7
139
184
  type: :runtime
140
- version_requirements: *id012
141
- - !ruby/object:Gem::Dependency
142
- name: rsolr-ext
143
185
  prerelease: false
144
- requirement: &id013 !ruby/object:Gem::Requirement
145
- requirements:
186
+ version_requirements: !ruby/object:Gem::Requirement
187
+ requirements:
146
188
  - - ~>
147
- - !ruby/object:Gem::Version
189
+ - !ruby/object:Gem::Version
190
+ version: 1.6.7
191
+ - !ruby/object:Gem::Dependency
192
+ name: rsolr-ext
193
+ requirement: !ruby/object:Gem::Requirement
194
+ requirements:
195
+ - - ~>
196
+ - !ruby/object:Gem::Version
148
197
  version: 1.0.3
149
198
  type: :runtime
150
- version_requirements: *id013
151
- - !ruby/object:Gem::Dependency
152
- name: ruby-cache
153
199
  prerelease: false
154
- requirement: &id014 !ruby/object:Gem::Requirement
155
- requirements:
200
+ version_requirements: !ruby/object:Gem::Requirement
201
+ requirements:
202
+ - - ~>
203
+ - !ruby/object:Gem::Version
204
+ version: 1.0.3
205
+ - !ruby/object:Gem::Dependency
206
+ name: ruby-cache
207
+ requirement: !ruby/object:Gem::Requirement
208
+ requirements:
156
209
  - - ~>
157
- - !ruby/object:Gem::Version
210
+ - !ruby/object:Gem::Version
158
211
  version: 0.3.0
159
212
  type: :runtime
160
- version_requirements: *id014
161
- - !ruby/object:Gem::Dependency
162
- name: ruby-graphviz
163
213
  prerelease: false
164
- requirement: &id015 !ruby/object:Gem::Requirement
165
- requirements:
214
+ version_requirements: !ruby/object:Gem::Requirement
215
+ requirements:
166
216
  - - ~>
167
- - !ruby/object:Gem::Version
217
+ - !ruby/object:Gem::Version
218
+ version: 0.3.0
219
+ - !ruby/object:Gem::Dependency
220
+ name: ruby-graphviz
221
+ requirement: !ruby/object:Gem::Requirement
222
+ requirements:
223
+ - - ~>
224
+ - !ruby/object:Gem::Version
168
225
  version: 1.0.9
169
226
  type: :runtime
170
- version_requirements: *id015
171
- - !ruby/object:Gem::Dependency
172
- name: rubydora
173
227
  prerelease: false
174
- requirement: &id016 !ruby/object:Gem::Requirement
175
- requirements:
228
+ version_requirements: !ruby/object:Gem::Requirement
229
+ requirements:
176
230
  - - ~>
177
- - !ruby/object:Gem::Version
231
+ - !ruby/object:Gem::Version
232
+ version: 1.0.9
233
+ - !ruby/object:Gem::Dependency
234
+ name: rubydora
235
+ requirement: !ruby/object:Gem::Requirement
236
+ requirements:
237
+ - - ~>
238
+ - !ruby/object:Gem::Version
178
239
  version: 1.6.5
179
240
  type: :runtime
180
- version_requirements: *id016
181
- - !ruby/object:Gem::Dependency
182
- name: solrizer
183
241
  prerelease: false
184
- requirement: &id017 !ruby/object:Gem::Requirement
185
- requirements:
242
+ version_requirements: !ruby/object:Gem::Requirement
243
+ requirements:
244
+ - - ~>
245
+ - !ruby/object:Gem::Version
246
+ version: 1.6.5
247
+ - !ruby/object:Gem::Dependency
248
+ name: solrizer
249
+ requirement: !ruby/object:Gem::Requirement
250
+ requirements:
186
251
  - - ~>
187
- - !ruby/object:Gem::Version
188
- version: "2.0"
252
+ - !ruby/object:Gem::Version
253
+ version: '2.0'
189
254
  type: :runtime
190
- version_requirements: *id017
191
- - !ruby/object:Gem::Dependency
192
- name: systemu
193
255
  prerelease: false
194
- requirement: &id018 !ruby/object:Gem::Requirement
195
- requirements:
256
+ version_requirements: !ruby/object:Gem::Requirement
257
+ requirements:
258
+ - - ~>
259
+ - !ruby/object:Gem::Version
260
+ version: '2.0'
261
+ - !ruby/object:Gem::Dependency
262
+ name: systemu
263
+ requirement: !ruby/object:Gem::Requirement
264
+ requirements:
196
265
  - - ~>
197
- - !ruby/object:Gem::Version
266
+ - !ruby/object:Gem::Version
198
267
  version: 2.6.0
199
268
  type: :runtime
200
- version_requirements: *id018
201
- - !ruby/object:Gem::Dependency
202
- name: uuidtools
203
269
  prerelease: false
204
- requirement: &id019 !ruby/object:Gem::Requirement
205
- requirements:
270
+ version_requirements: !ruby/object:Gem::Requirement
271
+ requirements:
272
+ - - ~>
273
+ - !ruby/object:Gem::Version
274
+ version: 2.6.0
275
+ - !ruby/object:Gem::Dependency
276
+ name: uuidtools
277
+ requirement: !ruby/object:Gem::Requirement
278
+ requirements:
206
279
  - - ~>
207
- - !ruby/object:Gem::Version
280
+ - !ruby/object:Gem::Version
208
281
  version: 2.1.4
209
282
  type: :runtime
210
- version_requirements: *id019
211
- - !ruby/object:Gem::Dependency
212
- name: validatable
213
283
  prerelease: false
214
- requirement: &id020 !ruby/object:Gem::Requirement
215
- requirements:
284
+ version_requirements: !ruby/object:Gem::Requirement
285
+ requirements:
286
+ - - ~>
287
+ - !ruby/object:Gem::Version
288
+ version: 2.1.4
289
+ - !ruby/object:Gem::Dependency
290
+ name: validatable
291
+ requirement: !ruby/object:Gem::Requirement
292
+ requirements:
216
293
  - - ~>
217
- - !ruby/object:Gem::Version
294
+ - !ruby/object:Gem::Version
218
295
  version: 1.6.7
219
296
  type: :runtime
220
- version_requirements: *id020
221
- - !ruby/object:Gem::Dependency
222
- name: dor-workflow-service
223
297
  prerelease: false
224
- requirement: &id021 !ruby/object:Gem::Requirement
225
- requirements:
298
+ version_requirements: !ruby/object:Gem::Requirement
299
+ requirements:
300
+ - - ~>
301
+ - !ruby/object:Gem::Version
302
+ version: 1.6.7
303
+ - !ruby/object:Gem::Dependency
304
+ name: dor-workflow-service
305
+ requirement: !ruby/object:Gem::Requirement
306
+ requirements:
226
307
  - - ~>
227
- - !ruby/object:Gem::Version
228
- version: "1.7"
229
- - - ">="
230
- - !ruby/object:Gem::Version
308
+ - !ruby/object:Gem::Version
309
+ version: '1.7'
310
+ - - ! '>='
311
+ - !ruby/object:Gem::Version
231
312
  version: 1.7.1
232
313
  type: :runtime
233
- version_requirements: *id021
234
- - !ruby/object:Gem::Dependency
235
- name: druid-tools
236
314
  prerelease: false
237
- requirement: &id022 !ruby/object:Gem::Requirement
238
- requirements:
315
+ version_requirements: !ruby/object:Gem::Requirement
316
+ requirements:
317
+ - - ~>
318
+ - !ruby/object:Gem::Version
319
+ version: '1.7'
320
+ - - ! '>='
321
+ - !ruby/object:Gem::Version
322
+ version: 1.7.1
323
+ - !ruby/object:Gem::Dependency
324
+ name: druid-tools
325
+ requirement: !ruby/object:Gem::Requirement
326
+ requirements:
239
327
  - - ~>
240
- - !ruby/object:Gem::Version
241
- version: 0.3.1
328
+ - !ruby/object:Gem::Version
329
+ version: 0.3.0
242
330
  type: :runtime
243
- version_requirements: *id022
244
- - !ruby/object:Gem::Dependency
245
- name: lyber-utils
246
331
  prerelease: false
247
- requirement: &id023 !ruby/object:Gem::Requirement
248
- requirements:
332
+ version_requirements: !ruby/object:Gem::Requirement
333
+ requirements:
334
+ - - ~>
335
+ - !ruby/object:Gem::Version
336
+ version: 0.3.0
337
+ - !ruby/object:Gem::Dependency
338
+ name: lyber-utils
339
+ requirement: !ruby/object:Gem::Requirement
340
+ requirements:
249
341
  - - ~>
250
- - !ruby/object:Gem::Version
342
+ - !ruby/object:Gem::Version
251
343
  version: 0.1.2
252
344
  type: :runtime
253
- version_requirements: *id023
254
- - !ruby/object:Gem::Dependency
255
- name: moab-versioning
256
345
  prerelease: false
257
- requirement: &id024 !ruby/object:Gem::Requirement
258
- requirements:
259
- - - "="
260
- - !ruby/object:Gem::Version
261
- version: 1.3.1
346
+ version_requirements: !ruby/object:Gem::Requirement
347
+ requirements:
348
+ - - ~>
349
+ - !ruby/object:Gem::Version
350
+ version: 0.1.2
351
+ - !ruby/object:Gem::Dependency
352
+ name: moab-versioning
353
+ requirement: !ruby/object:Gem::Requirement
354
+ requirements:
355
+ - - '='
356
+ - !ruby/object:Gem::Version
357
+ version: 1.3.3
262
358
  type: :runtime
263
- version_requirements: *id024
264
- - !ruby/object:Gem::Dependency
265
- name: stanford-mods
266
359
  prerelease: false
267
- requirement: &id025 !ruby/object:Gem::Requirement
268
- requirements:
360
+ version_requirements: !ruby/object:Gem::Requirement
361
+ requirements:
362
+ - - '='
363
+ - !ruby/object:Gem::Version
364
+ version: 1.3.3
365
+ - !ruby/object:Gem::Dependency
366
+ name: stanford-mods
367
+ requirement: !ruby/object:Gem::Requirement
368
+ requirements:
269
369
  - - ~>
270
- - !ruby/object:Gem::Version
370
+ - !ruby/object:Gem::Version
271
371
  version: 0.0.14
272
372
  type: :runtime
273
- version_requirements: *id025
274
- - !ruby/object:Gem::Dependency
275
- name: fakeweb
276
373
  prerelease: false
277
- requirement: &id026 !ruby/object:Gem::Requirement
278
- requirements:
374
+ version_requirements: !ruby/object:Gem::Requirement
375
+ requirements:
376
+ - - ~>
377
+ - !ruby/object:Gem::Version
378
+ version: 0.0.14
379
+ - !ruby/object:Gem::Dependency
380
+ name: fakeweb
381
+ requirement: !ruby/object:Gem::Requirement
382
+ requirements:
279
383
  - - ~>
280
- - !ruby/object:Gem::Version
384
+ - !ruby/object:Gem::Version
281
385
  version: 1.3.0
282
386
  type: :development
283
- version_requirements: *id026
284
- - !ruby/object:Gem::Dependency
285
- name: haml
286
387
  prerelease: false
287
- requirement: &id027 !ruby/object:Gem::Requirement
288
- requirements:
388
+ version_requirements: !ruby/object:Gem::Requirement
389
+ requirements:
390
+ - - ~>
391
+ - !ruby/object:Gem::Version
392
+ version: 1.3.0
393
+ - !ruby/object:Gem::Dependency
394
+ name: haml
395
+ requirement: !ruby/object:Gem::Requirement
396
+ requirements:
289
397
  - - ~>
290
- - !ruby/object:Gem::Version
398
+ - !ruby/object:Gem::Version
291
399
  version: 4.0.4
292
400
  type: :development
293
- version_requirements: *id027
294
- - !ruby/object:Gem::Dependency
295
- name: jhove-service
296
401
  prerelease: false
297
- requirement: &id028 !ruby/object:Gem::Requirement
298
- requirements:
402
+ version_requirements: !ruby/object:Gem::Requirement
403
+ requirements:
404
+ - - ~>
405
+ - !ruby/object:Gem::Version
406
+ version: 4.0.4
407
+ - !ruby/object:Gem::Dependency
408
+ name: jhove-service
409
+ requirement: !ruby/object:Gem::Requirement
410
+ requirements:
299
411
  - - ~>
300
- - !ruby/object:Gem::Version
412
+ - !ruby/object:Gem::Version
301
413
  version: 1.0.1
302
414
  type: :development
303
- version_requirements: *id028
304
- - !ruby/object:Gem::Dependency
305
- name: rake
306
415
  prerelease: false
307
- requirement: &id029 !ruby/object:Gem::Requirement
308
- requirements:
416
+ version_requirements: !ruby/object:Gem::Requirement
417
+ requirements:
418
+ - - ~>
419
+ - !ruby/object:Gem::Version
420
+ version: 1.0.1
421
+ - !ruby/object:Gem::Dependency
422
+ name: rake
423
+ requirement: !ruby/object:Gem::Requirement
424
+ requirements:
309
425
  - - ~>
310
- - !ruby/object:Gem::Version
426
+ - !ruby/object:Gem::Version
311
427
  version: 0.8.7
312
428
  type: :development
313
- version_requirements: *id029
314
- - !ruby/object:Gem::Dependency
315
- name: rdoc
316
429
  prerelease: false
317
- requirement: &id030 !ruby/object:Gem::Requirement
318
- requirements:
430
+ version_requirements: !ruby/object:Gem::Requirement
431
+ requirements:
432
+ - - ~>
433
+ - !ruby/object:Gem::Version
434
+ version: 0.8.7
435
+ - !ruby/object:Gem::Dependency
436
+ name: rdoc
437
+ requirement: !ruby/object:Gem::Requirement
438
+ requirements:
319
439
  - - ~>
320
- - !ruby/object:Gem::Version
440
+ - !ruby/object:Gem::Version
321
441
  version: 4.0.1
322
442
  type: :development
323
- version_requirements: *id030
324
- - !ruby/object:Gem::Dependency
325
- name: rspec
326
443
  prerelease: false
327
- requirement: &id031 !ruby/object:Gem::Requirement
328
- requirements:
444
+ version_requirements: !ruby/object:Gem::Requirement
445
+ requirements:
446
+ - - ~>
447
+ - !ruby/object:Gem::Version
448
+ version: 4.0.1
449
+ - !ruby/object:Gem::Dependency
450
+ name: rspec
451
+ requirement: !ruby/object:Gem::Requirement
452
+ requirements:
329
453
  - - ~>
330
- - !ruby/object:Gem::Version
454
+ - !ruby/object:Gem::Version
331
455
  version: 2.14.1
332
456
  type: :development
333
- version_requirements: *id031
334
- - !ruby/object:Gem::Dependency
335
- name: yard
336
457
  prerelease: false
337
- requirement: &id032 !ruby/object:Gem::Requirement
338
- requirements:
458
+ version_requirements: !ruby/object:Gem::Requirement
459
+ requirements:
460
+ - - ~>
461
+ - !ruby/object:Gem::Version
462
+ version: 2.14.1
463
+ - !ruby/object:Gem::Dependency
464
+ name: yard
465
+ requirement: !ruby/object:Gem::Requirement
466
+ requirements:
339
467
  - - ~>
340
- - !ruby/object:Gem::Version
468
+ - !ruby/object:Gem::Version
341
469
  version: 0.8.7
342
470
  type: :development
343
- version_requirements: *id032
471
+ prerelease: false
472
+ version_requirements: !ruby/object:Gem::Requirement
473
+ requirements:
474
+ - - ~>
475
+ - !ruby/object:Gem::Version
476
+ version: 0.8.7
344
477
  description: Contains classes to register objects and initialize workflows
345
- email:
478
+ email:
346
479
  - mbklein@stanford.edu
347
- executables:
480
+ executables:
348
481
  - dor-indexer
349
482
  - dor-indexerd
350
483
  extensions: []
351
-
352
484
  extra_rdoc_files: []
353
-
354
- files:
485
+ files:
355
486
  - lib/dor/config.rb
356
487
  - lib/dor/datastreams/administrative_metadata_ds.rb
357
488
  - lib/dor/datastreams/content_metadata_ds.rb
@@ -401,7 +532,7 @@ files:
401
532
  - lib/dor/models/upgradable.rb
402
533
  - lib/dor/models/versionable.rb
403
534
  - lib/dor/models/workflow_object.rb
404
- - lib/dor/services/cleanup_reset_service.rb
535
+ - lib/dor/services/archive_workspace_service.rb
405
536
  - lib/dor/services/cleanup_service.rb
406
537
  - lib/dor/services/digital_stacks_service.rb
407
538
  - lib/dor/services/merge_service.rb
@@ -409,7 +540,6 @@ files:
409
540
  - lib/dor/services/metadata_handlers/mdtoolkit_handler.rb
410
541
  - lib/dor/services/metadata_service.rb
411
542
  - lib/dor/services/registration_service.rb
412
- - lib/dor/services/reset_workspace_service.rb
413
543
  - lib/dor/services/sdr_ingest_service.rb
414
544
  - lib/dor/services/search_service.rb
415
545
  - lib/dor/services/suri_service.rb
@@ -436,30 +566,26 @@ files:
436
566
  - bin/dor-indexerd
437
567
  homepage:
438
568
  licenses: []
439
-
440
569
  metadata: {}
441
-
442
570
  post_install_message:
443
571
  rdoc_options: []
444
-
445
- require_paths:
572
+ require_paths:
446
573
  - lib
447
- required_ruby_version: !ruby/object:Gem::Requirement
448
- requirements:
449
- - - ">="
450
- - !ruby/object:Gem::Version
451
- version: "0"
452
- required_rubygems_version: !ruby/object:Gem::Requirement
453
- requirements:
454
- - - ">="
455
- - !ruby/object:Gem::Version
574
+ required_ruby_version: !ruby/object:Gem::Requirement
575
+ requirements:
576
+ - - ! '>='
577
+ - !ruby/object:Gem::Version
578
+ version: '0'
579
+ required_rubygems_version: !ruby/object:Gem::Requirement
580
+ requirements:
581
+ - - ! '>='
582
+ - !ruby/object:Gem::Version
456
583
  version: 1.3.6
457
584
  requirements: []
458
-
459
585
  rubyforge_project:
460
- rubygems_version: 2.0.14
586
+ rubygems_version: 2.1.2
461
587
  signing_key:
462
588
  specification_version: 4
463
589
  summary: Ruby implmentation of DOR services used by the SULAIR Digital Library
464
590
  test_files: []
465
-
591
+ has_rdoc:
@@ -1,101 +0,0 @@
1
- require 'pathname'
2
-
3
- module Dor
4
-
5
- # Remove all traces of the object's data files from the workspace and export areas
6
- class CleanupResetService
7
-
8
- # @param [String] druid The identifier for the object whose reset data is to be removed
9
- # @return [void] remove copy of the reset data that was exported to preservation core
10
- def self.cleanup_by_reset_druid(druid)
11
- last_version = get_druid_last_version(druid)
12
- cleanup_reset_workspace_content(druid, last_version, Config.cleanup.local_workspace_root)
13
- cleanup_reset_workspace_content(druid, last_version, Config.cleanup.local_assembly_root)
14
- cleanup_reset_export(druid, last_version)
15
- end
16
-
17
- def self.get_druid_last_version(druid)
18
- druid_obj = Dor::Item.find(druid)
19
- last_version = druid_obj.current_version.to_i
20
-
21
- #if the current version is still open, avoid this versioned directory
22
- if Dor::WorkflowService.get_lifecycle('dor', druid, 'accessioned').nil? then
23
- last_version = last_version - 1
24
- end
25
- return last_version
26
- end
27
-
28
- # @param [String] druid The identifier for the object whose reset data is to be removed
29
- # @param [String] base The base directory to delete from
30
- # @param [Integer] last_version The last version that the data should be removed until version 1
31
- # @return [void] remove all the object's reset data files from the workspace area equal to less than the last_version
32
- def self.cleanup_reset_workspace_content(druid,last_version, base)
33
- base_druid = DruidTools::Druid.new(druid, base)
34
- base_druid_tree = base_druid.pathname.to_s
35
- #if it is truncated tree /aa/111/aaa/1111/content,
36
- #we should follow the regular cleanup technique
37
-
38
- reset_directories = get_reset_dir_list(last_version, base_druid_tree)
39
- reset_directories.each do |path|
40
- FileUtils.rm_rf(path)
41
- end
42
- base_druid.prune_ancestors(base_druid.pathname.parent)
43
- end
44
-
45
-
46
- # @param [String] druid The identifier for the object whose reset data is to be removed
47
- # @param [String] base The base directory to delete from
48
- # @param [Integer] last_version The last version that the data should be removed until version 1
49
- # @return [void] prepares a list of reset directories that should be removed
50
- def self.get_reset_dir_list(last_version, base_druid_tree)
51
- reset_directories = []
52
- for i in 1..last_version
53
- reset_path = "#{base_druid_tree}_v#{i}"
54
- reset_directories.append(reset_path) if File.exists?(reset_path)
55
- end
56
- return reset_directories
57
- end
58
-
59
- # @param [String] druid The identifier for the object whose reset bags data is to be removed
60
- # @return [void] remove copy of the reset data that was exported to preservation core
61
- def self.cleanup_reset_export(druid, last_version)
62
- id = druid.split(':').last
63
- base_bag_directory = File.join(Config.cleanup.local_export_home, id)
64
-
65
- bag_dir_list = get_reset_bag_dir_list(last_version, base_bag_directory)
66
- bag_dir_list.each do |bag_dir|
67
- Pathname(bag_dir).rmtree
68
- end
69
-
70
- bag_tar_list = get_reset_bag_tar_list(last_version, base_bag_directory)
71
- bag_tar_list.each do |bag_tar|
72
- Pathname(bag_tar).rmtree
73
- end
74
- end
75
-
76
- # @param [Integer] last_version The last version that the data should be removed until version 1
77
- # @param [String] base_bag_directory The base bag directory including the export home and druid id
78
- # @return [void] prepares a list of reset bag directories that should be removed
79
- def self.get_reset_bag_dir_list(last_version, base_bag_directory)
80
- reset_bags = []
81
- for i in 1..last_version do
82
- reset_path = "#{base_bag_directory}_v#{i}"
83
- reset_bags.append(reset_path) if File.exists?(reset_path)
84
- end
85
- return reset_bags
86
- end
87
-
88
- # @param [String] base_bag_directory The base bag directory including the export home and druid id
89
- # @param [Integer] last_version The last version that the data should be removed until version 1
90
- # @return [void] prepares a list of reset bag tars that should be removed
91
- def self.get_reset_bag_tar_list(last_version, base_bag_directory)
92
- reset_bags = []
93
- for i in 1..last_version do
94
- reset_path = "#{base_bag_directory}_v#{i}.tar"
95
- reset_bags.append(reset_path) if File.exists?(reset_path)
96
- end
97
- return reset_bags
98
- end
99
-
100
- end
101
- end
@@ -1,35 +0,0 @@
1
- module Dor
2
-
3
- # Rename the druid trees at the end of the accessionWF in order to be cleaned/deleted later.
4
- class ResetWorkspaceService
5
-
6
- def self.reset_workspace_druid_tree(druid, version, workspace_root)
7
-
8
- druid_tree_path = DruidTools::Druid.new(druid, workspace_root).pathname.to_s
9
-
10
- raise "The archived directory #{druid_tree_path}_v#{version} already existed." if File.exists?("#{druid_tree_path}_v#{version}")
11
-
12
- if File.exists?(druid_tree_path)
13
- FileUtils.mv(druid_tree_path, "#{druid_tree_path}_v#{version}")
14
- end #Else is a truncated tree where we shouldn't do anything
15
-
16
- end
17
-
18
- def self.reset_export_bag(druid, version, export_root)
19
-
20
- id = druid.split(':').last
21
- bag_dir = File.join(export_root, id)
22
-
23
- raise "The archived bag #{bag_dir}_v#{version} already existed." if File.exists?("#{bag_dir}_v#{version}")
24
-
25
- if File.exists?(bag_dir)
26
- FileUtils.mv(bag_dir, "#{bag_dir}_v#{version}")
27
- end
28
-
29
- if File.exists?("#{bag_dir}.tar")
30
- FileUtils.mv("#{bag_dir}.tar", "#{bag_dir}_v#{version}.tar")
31
- end
32
- end
33
-
34
- end
35
- end