Class: Dor::Services::Client::Object
- Inherits:
-
VersionedService
- Object
- VersionedService
- Dor::Services::Client::Object
- Defined in:
- lib/dor/services/client/object.rb
Overview
API calls that are about a repository object
Instance Attribute Summary collapse
-
#object_identifier ⇒ Object
readonly
Returns the value of attribute object_identifier.
Instance Method Summary collapse
- #files ⇒ Object
-
#initialize(connection:, version:, object_identifier:) ⇒ Object
constructor
A new instance of Object.
- #metadata ⇒ Object
-
#notify_goobi ⇒ boolean
Notify the external Goobi system for a new object that was registered in DOR.
-
#publish ⇒ boolean
Publish a new object.
-
#refresh_metadata ⇒ boolean
Pull in metadata from Symphony and update descMetadata.
- #release_tags ⇒ Object
- #sdr ⇒ Object
-
#update_marc_record ⇒ boolean
Update the marc record for the give object.
- #version ⇒ Object
- #workspace ⇒ Object
Constructor Details
#initialize(connection:, version:, object_identifier:) ⇒ Object
Returns a new instance of Object.
11 12 13 14 15 16 |
# File 'lib/dor/services/client/object.rb', line 11 def initialize(connection:, version:, object_identifier:) raise ArgumentError, "The `object_identifier` parameter must be an identifier string: #{object_identifier.inspect}" unless object_identifier.is_a?(String) super(connection: connection, version: version) @object_identifier = object_identifier end |
Instance Attribute Details
#object_identifier ⇒ Object (readonly)
Returns the value of attribute object_identifier.
8 9 10 |
# File 'lib/dor/services/client/object.rb', line 8 def object_identifier @object_identifier end |
Instance Method Details
#files ⇒ Object
26 27 28 |
# File 'lib/dor/services/client/object.rb', line 26 def files @files ||= Files.new(connection: connection, version: api_version, object_identifier: object_identifier) end |
#metadata ⇒ Object
22 23 24 |
# File 'lib/dor/services/client/object.rb', line 22 def ||= Metadata.new(connection: connection, version: api_version, object_identifier: object_identifier) end |
#notify_goobi ⇒ boolean
Notify the external Goobi system for a new object that was registered in DOR
85 86 87 88 89 90 91 92 |
# File 'lib/dor/services/client/object.rb', line 85 def notify_goobi resp = connection.post do |req| req.url "#{object_path}/notify_goobi" end return true if resp.success? raise_exception_based_on_response!(resp) end |
#publish ⇒ boolean
Publish a new object
46 47 48 49 50 51 52 53 |
# File 'lib/dor/services/client/object.rb', line 46 def publish resp = connection.post do |req| req.url "#{object_path}/publish" end return true if resp.success? raise_exception_based_on_response!(resp) end |
#refresh_metadata ⇒ boolean
Pull in metadata from Symphony and update descMetadata
72 73 74 75 76 77 78 79 |
# File 'lib/dor/services/client/object.rb', line 72 def resp = connection.post do |req| req.url "#{object_path}/refresh_metadata" end return true if resp.success? raise_exception_based_on_response!(resp) end |
#release_tags ⇒ Object
34 35 36 |
# File 'lib/dor/services/client/object.rb', line 34 def ||= ReleaseTags.new(connection: connection, version: api_version, object_identifier: object_identifier) end |
#sdr ⇒ Object
18 19 20 |
# File 'lib/dor/services/client/object.rb', line 18 def sdr @sdr ||= SDR.new(connection: connection, version: api_version, object_identifier: object_identifier) end |
#update_marc_record ⇒ boolean
Update the marc record for the give object
59 60 61 62 63 64 65 66 |
# File 'lib/dor/services/client/object.rb', line 59 def update_marc_record resp = connection.post do |req| req.url "#{object_path}/update_marc_record" end return true if resp.success? raise_exception_based_on_response!(resp) end |
#version ⇒ Object
38 39 40 |
# File 'lib/dor/services/client/object.rb', line 38 def version @version ||= ObjectVersion.new(connection: connection, version: api_version, object_identifier: object_identifier) end |
#workspace ⇒ Object
30 31 32 |
# File 'lib/dor/services/client/object.rb', line 30 def workspace @workspace ||= Workspace.new(connection: connection, version: api_version, object_identifier: object_identifier) end |