Sha256: 75a225201235951d38e95db5324ec1a333a24dc9f20e17a10a81ae7f8dbd70cd
Contents?: true
Size: 1.27 KB
Versions: 8
Compression:
Stored size: 1.27 KB
Contents
# frozen_string_literal: true module PurlFetcher class Client # Transfer release tags to purl-fetcher class ReleaseTags # @param [String] druid the identifier of the object # @param [Array<String>] index ([]) list of properties to index to # @param [Array<String>] delete ([]) list of properties to delete from def self.release(druid:, index: [], delete: []) new(druid:, index:, delete:).release end # @param [String] druid the identifier of the object # @param [Array<String>] index ([]) list of properties to index to # @param [Array<String>] delete ([]) list of properties to delete from def initialize(druid:, index: [], delete: []) @druid = druid @index = index @delete = delete end def release logger.debug("Starting an release request for: #{druid}") response = client.put(path:, body:) logger.debug("Release request complete") end private attr_reader :druid, :index, :delete def body { actions: { index:, delete: } }.to_json end def logger Client.config.logger end def client Client.instance end def path "/v1/released/#{druid}" end end end end
Version data entries
8 entries across 8 versions & 1 rubygems