dor-services-client 14.3.0 → 14.5.0
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 +4 -4
- data/Gemfile.lock +3 -3
- data/README.md +5 -1
- data/dor-services-client.gemspec +1 -1
- data/lib/dor/services/client/accession.rb +0 -1
- data/lib/dor/services/client/object.rb +4 -0
- data/lib/dor/services/client/object_version.rb +0 -2
- data/lib/dor/services/client/release_tags.rb +52 -0
- data/lib/dor/services/client/version.rb +1 -1
- metadata +6 -5
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b8ee28c0d6503ac6cc8e3c39aca64fd7d191cc6f6a7bac04ef4f7424bf92a760
|
4
|
+
data.tar.gz: cf304665caa7b4f9e5412da754e784205b493e99add1e88dede7f37d34529819
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 04f1f79f78d69c6e150e875fd962b95e61bf52f73aff4abc6471df993ff1969e5b7121e8d3e6a437329768df227ef326485361a945df827ac71ce0bc73d999e0
|
7
|
+
data.tar.gz: 4508c1c0e766235e898d40c0a7da1609ba1e203350141c0f091be66508205a07a5b530271479dd7048143b63736adbe0e8989b4492395dee2632107c0b7c711d
|
data/Gemfile.lock
CHANGED
@@ -1,9 +1,9 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
dor-services-client (14.
|
4
|
+
dor-services-client (14.5.0)
|
5
5
|
activesupport (>= 4.2, < 8)
|
6
|
-
cocina-models (~> 0.
|
6
|
+
cocina-models (~> 0.96.0)
|
7
7
|
deprecation
|
8
8
|
faraday (~> 2.0)
|
9
9
|
faraday-retry
|
@@ -29,7 +29,7 @@ GEM
|
|
29
29
|
base64 (0.2.0)
|
30
30
|
bigdecimal (3.1.7)
|
31
31
|
byebug (11.1.3)
|
32
|
-
cocina-models (0.
|
32
|
+
cocina-models (0.96.0)
|
33
33
|
activesupport
|
34
34
|
deprecation
|
35
35
|
dry-struct (~> 1.0)
|
data/README.md
CHANGED
@@ -122,7 +122,7 @@ object_client.version.inventory
|
|
122
122
|
object_client.version.current
|
123
123
|
object_client.version.openable?
|
124
124
|
# see dor-services-app openapi.yml for optional params
|
125
|
-
object_client.version.open(description: 'Changed title'
|
125
|
+
object_client.version.open(description: 'Changed title')
|
126
126
|
# see dor-services-app openapi.yml for optional params
|
127
127
|
object_client.version.close
|
128
128
|
|
@@ -145,6 +145,10 @@ object_client.administrative_tags.update(current: 'Current : Tag', new: 'Replace
|
|
145
145
|
object_client.administrative_tags.destroy(tag: 'Delete : Me')
|
146
146
|
object_client.administrative_tags.list
|
147
147
|
|
148
|
+
# Create and list release tags for an object
|
149
|
+
object_client.release_tags.create(tag: Cocina::Models::Tag.new(to: 'Searchworks'))
|
150
|
+
object_client.release_tags.list
|
151
|
+
|
148
152
|
# Create and list events for an object
|
149
153
|
object_client.events.create(type: type, data: data)
|
150
154
|
object_client.events.list
|
data/dor-services-client.gemspec
CHANGED
@@ -25,7 +25,7 @@ Gem::Specification.new do |spec|
|
|
25
25
|
spec.required_ruby_version = '>= 3.0', '< 4'
|
26
26
|
|
27
27
|
spec.add_dependency 'activesupport', '>= 4.2', '< 8'
|
28
|
-
spec.add_dependency 'cocina-models', '~> 0.
|
28
|
+
spec.add_dependency 'cocina-models', '~> 0.96.0'
|
29
29
|
spec.add_dependency 'deprecation', '>= 0'
|
30
30
|
spec.add_dependency 'faraday', '~> 2.0'
|
31
31
|
spec.add_dependency 'faraday-retry'
|
@@ -15,7 +15,6 @@ module Dor
|
|
15
15
|
|
16
16
|
# Start accession on an object (start specified workflow, assemblyWF by default, and version if needed)
|
17
17
|
# @param params [Hash<Symbol,String>] optional parameter hash
|
18
|
-
# @option params [String] :significance set significance (major/minor/patch) of version change - required
|
19
18
|
# @option params [String] :description set description of version change - required
|
20
19
|
# @option params [String] :opening_user_name add opening username to the event - optional
|
21
20
|
# @option params [String] :workflow the workflow to start - defaults to 'assemblyWF'
|
@@ -51,7 +51,6 @@ module Dor
|
|
51
51
|
|
52
52
|
# Open new version for an object
|
53
53
|
# @param description [String] a description of the object version being opened - required
|
54
|
-
# @param significance [String] 'major' 'minor' or 'admin' - required
|
55
54
|
# @param opening_user_name [String] sunetid - defaults to nil
|
56
55
|
# @param assume_accessioned [Boolean] if true, does not check whether object has been accessioned; defaults to false
|
57
56
|
# @raise [NotFoundResponse] when the response is a 404 (object not found)
|
@@ -70,7 +69,6 @@ module Dor
|
|
70
69
|
|
71
70
|
# Close current version for an object
|
72
71
|
# @param description [String] (optional) - a description of the object version being opened
|
73
|
-
# @param significance [String] (optional) - 'major' 'minor' or 'admin'
|
74
72
|
# @param user_name [String] (optional) - sunetid
|
75
73
|
# @param start_accession [Boolean] (optional) - whether to start accessioning workflow; defaults to true
|
76
74
|
# @raise [NotFoundResponse] when the response is a 404 (object not found)
|
@@ -0,0 +1,52 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Dor
|
4
|
+
module Services
|
5
|
+
class Client
|
6
|
+
# Interact with release tags endpoint for a given object
|
7
|
+
class ReleaseTags < VersionedService
|
8
|
+
# @param object_identifier [String] the pid for the object
|
9
|
+
def initialize(connection:, version:, object_identifier:)
|
10
|
+
super(connection: connection, version: version)
|
11
|
+
@object_identifier = object_identifier
|
12
|
+
end
|
13
|
+
|
14
|
+
# Create a release tag for an object
|
15
|
+
#
|
16
|
+
# @param tag [Cocina::Models::ReleaseTag]
|
17
|
+
# @return [Boolean] true if successful
|
18
|
+
# @raise [NotFoundResponse] when the response is a 404 (object not found)
|
19
|
+
# @raise [UnexpectedResponse] if the request is unsuccessful.
|
20
|
+
def create(tag:)
|
21
|
+
resp = connection.post do |req|
|
22
|
+
req.url "#{api_version}/objects/#{object_identifier}/release_tags"
|
23
|
+
req.headers['Content-Type'] = 'application/json'
|
24
|
+
req.body = tag.to_json
|
25
|
+
end
|
26
|
+
raise_exception_based_on_response!(resp, object_identifier) unless resp.success?
|
27
|
+
|
28
|
+
true
|
29
|
+
end
|
30
|
+
|
31
|
+
# List release tags for an object
|
32
|
+
#
|
33
|
+
# @raise [NotFoundResponse] when the response is a 404 (object not found)
|
34
|
+
# @raise [UnexpectedResponse] if the request is unsuccessful.
|
35
|
+
# @return [Array<Cocina::Models::ReleaseTag>]
|
36
|
+
def list
|
37
|
+
resp = connection.get do |req|
|
38
|
+
req.url "#{api_version}/objects/#{object_identifier}/release_tags"
|
39
|
+
end
|
40
|
+
|
41
|
+
raise_exception_based_on_response!(resp, object_identifier) unless resp.success?
|
42
|
+
|
43
|
+
JSON.parse(resp.body).map { |tag_data| Cocina::Models::ReleaseTag.new(tag_data) }
|
44
|
+
end
|
45
|
+
|
46
|
+
private
|
47
|
+
|
48
|
+
attr_reader :object_identifier
|
49
|
+
end
|
50
|
+
end
|
51
|
+
end
|
52
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: dor-services-client
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 14.
|
4
|
+
version: 14.5.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Justin Coyne
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: exe
|
11
11
|
cert_chain: []
|
12
|
-
date: 2024-03-
|
12
|
+
date: 2024-03-29 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: activesupport
|
@@ -37,14 +37,14 @@ dependencies:
|
|
37
37
|
requirements:
|
38
38
|
- - "~>"
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version: 0.
|
40
|
+
version: 0.96.0
|
41
41
|
type: :runtime
|
42
42
|
prerelease: false
|
43
43
|
version_requirements: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
45
|
- - "~>"
|
46
46
|
- !ruby/object:Gem::Version
|
47
|
-
version: 0.
|
47
|
+
version: 0.96.0
|
48
48
|
- !ruby/object:Gem::Dependency
|
49
49
|
name: deprecation
|
50
50
|
requirement: !ruby/object:Gem::Requirement
|
@@ -249,6 +249,7 @@ files:
|
|
249
249
|
- lib/dor/services/client/object.rb
|
250
250
|
- lib/dor/services/client/object_version.rb
|
251
251
|
- lib/dor/services/client/objects.rb
|
252
|
+
- lib/dor/services/client/release_tags.rb
|
252
253
|
- lib/dor/services/client/response_error_formatter.rb
|
253
254
|
- lib/dor/services/client/transfer.rb
|
254
255
|
- lib/dor/services/client/version.rb
|
@@ -277,7 +278,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
277
278
|
- !ruby/object:Gem::Version
|
278
279
|
version: '0'
|
279
280
|
requirements: []
|
280
|
-
rubygems_version: 3.
|
281
|
+
rubygems_version: 3.5.6
|
281
282
|
signing_key:
|
282
283
|
specification_version: 4
|
283
284
|
summary: A client for dor-services-app
|