Class: Dor::Services::Client::Milestones
- Inherits:
-
VersionedService
- Object
- VersionedService
- Dor::Services::Client::Milestones
- Defined in:
- lib/dor/services/client/milestones.rb
Overview
API calls around milestones
Constant Summary
Constants inherited from VersionedService
VersionedService::EXCEPTION_CLASS, VersionedService::JSON_API_MIME_TYPE
Instance Method Summary collapse
-
#date(milestone_name:, version: nil, active_only: false) ⇒ Time
Returns the Date for a requested milestone from workflow lifecycle.
-
#initialize(connection:, version:, object_identifier:) ⇒ Milestones
constructor
A new instance of Milestones.
- #list ⇒ Array<Hash>
Methods inherited from VersionedService
Constructor Details
#initialize(connection:, version:, object_identifier:) ⇒ Milestones
Returns a new instance of Milestones.
9 10 11 12 |
# File 'lib/dor/services/client/milestones.rb', line 9 def initialize(connection:, version:, object_identifier:) super(connection: connection, version: version) @object_identifier = object_identifier end |
Instance Method Details
#date(milestone_name:, version: nil, active_only: false) ⇒ Time
Returns the Date for a requested milestone from workflow lifecycle
21 22 23 |
# File 'lib/dor/services/client/milestones.rb', line 21 def date(milestone_name:, version: nil, active_only: false) filter_milestone(query_lifecycle(version: version, active_only: active_only), milestone_name) end |
#list ⇒ Array<Hash>
26 27 28 29 30 31 |
# File 'lib/dor/services/client/milestones.rb', line 26 def list doc = query_lifecycle(active_only: false) doc.xpath('//lifecycle/milestone').collect do |node| { milestone: node.text, at: Time.parse(node['date']), version: node['version'] } end end |