Sha256: a3a8a090b03cf8705a968fc52ef2921b2a62dbcd345e1a7f634da44b839b2c09

Contents?: true

Size: 955 Bytes

Versions: 3

Compression:

Stored size: 955 Bytes

Contents

module Exlibris
  module Aleph
    class Patron
      class Record
        class Item
          class Hold
            attr_reader :patron_id, :record_id, :item_id

            def initialize(patron_id, record_id, item_id)
              @patron_id = patron_id
              @record_id = record_id
              @item_id = item_id
            end

            def pickup_locations
              @pickup_locations ||= reader.pickup_locations
            end

            def allowed?
              reader.allowed == 'Y'
            end

            private
            def client
              @client ||=
                API::Client::Patron::Record::Item::Hold.new(patron_id, record_id, item_id)
            end

            def root
              @root ||= client.root
            end

            def reader
              @reader ||= API::Reader::Patron::Record::Item::Hold.new(root)
            end
          end
        end
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
exlibris-aleph-2.0.4 lib/exlibris/aleph/patron/record/item/hold.rb
exlibris-aleph-2.0.3 lib/exlibris/aleph/patron/record/item/hold.rb
exlibris-aleph-2.0.0 lib/exlibris/aleph/patron/record/item/hold.rb