Sha256: d6c2128d6ca72df746205ea0ad76e1435a85b6e72c5adc195d5c1d5ed432f673
Contents?: true
Size: 1.38 KB
Versions: 54
Compression:
Stored size: 1.38 KB
Contents
module CurationConcerns class EmbargoService < RestrictionService class << self # # Methods for Querying Repository to find Embargoed Objects # # Returns all assets with embargo release date set to a date in the past def assets_with_expired_embargoes builder = CurationConcerns::ExpiredEmbargoSearchBuilder.new(self) presenters(builder) end # Returns all assets with embargo release date set # (assumes that when lease visibility is applied to assets # whose leases have expired, the lease expiration date will be removed from its metadata) def assets_under_embargo builder = CurationConcerns::EmbargoSearchBuilder.new(self) presenters(builder) end # Returns all assets that have had embargoes deactivated in the past. def assets_with_deactivated_embargoes builder = CurationConcerns::DeactivatedEmbargoSearchBuilder.new(self) presenters(builder) end private def presenter_class CurationConcerns::EmbargoPresenter end def presenters(builder) response = repository.search(builder) response.documents.map { |d| presenter_class.new(d) } end def repository config.repository end def config @config ||= ::CatalogController.new end end end end
Version data entries
54 entries across 54 versions & 1 rubygems