class Exlibris::Aleph::Item

Constants

ON_SHELF_VALUES

Attributes

id[R]
record_id[R]

Public Class Methods

new(record_id, id) click to toggle source
# File lib/exlibris/aleph/item.rb, line 8
def initialize(record_id, id)
  @record_id = record_id
  @id = id
end

Public Instance Methods

call_number() click to toggle source
# File lib/exlibris/aleph/item.rb, line 20
def call_number
  unless client.error?
    @call_number ||=
      CallNumber.new(reader.classification, reader.description)
  end
end
circulation_policy() click to toggle source
# File lib/exlibris/aleph/item.rb, line 63
def circulation_policy
  unless client.error?
    @circulation_policy ||=
      circulation_policies.find_by_identifier(circulation_policy_identifier)
  end
end
circulation_status() click to toggle source
# File lib/exlibris/aleph/item.rb, line 27
def circulation_status
  unless client.error?
    @circulation_status ||=
      CirculationStatus.new(reader.circulation_status_value)
  end
end
collection() click to toggle source
# File lib/exlibris/aleph/item.rb, line 13
def collection
  unless client.error?
    @collection ||=
      Collection.new(collection_code, collection_display, sub_library)
  end
end
on_shelf?() click to toggle source
# File lib/exlibris/aleph/item.rb, line 59
def on_shelf?
  !client.error? && ON_SHELF_VALUES.include?(circulation_status.value)
end
opac_note() click to toggle source
# File lib/exlibris/aleph/item.rb, line 47
def opac_note
  unless client.error?
    @opac_note ||= OpacNote.new(reader.opac_note)
  end
end
processing_status() click to toggle source
# File lib/exlibris/aleph/item.rb, line 40
def processing_status
  unless client.error?
    @processing_status ||=
      ProcessingStatus.new(processing_status_code, processing_status_display)
  end
end
queue() click to toggle source
# File lib/exlibris/aleph/item.rb, line 53
def queue
  unless client.error?
    @queue ||= Queue.new(reader.queue)
  end
end
status() click to toggle source
# File lib/exlibris/aleph/item.rb, line 34
def status
  unless client.error?
    @status ||= Status.new(status_code, status_display)
  end
end

Private Instance Methods

admin_library() click to toggle source
# File lib/exlibris/aleph/item.rb, line 83
def admin_library
  @admin_library ||= AdminLibrary.new(reader.admin_library_code)
end
circulation_policies() click to toggle source
# File lib/exlibris/aleph/item.rb, line 124
def circulation_policies
  tables_manager.item_circulation_policies
end
circulation_policy_identifier() click to toggle source
# File lib/exlibris/aleph/item.rb, line 132
def circulation_policy_identifier
  @circulation_policy_identifier ||=
    CirculationPolicy::Identifier.new(status, processing_status, sub_library)
end
client() click to toggle source
# File lib/exlibris/aleph/item.rb, line 71
def client
  @client ||= API::Client::Record::Item.new(record_id, id)
end
collection_code() click to toggle source
# File lib/exlibris/aleph/item.rb, line 100
def collection_code
  @collection_code ||= reader.collection_code
end
collection_display() click to toggle source
# File lib/exlibris/aleph/item.rb, line 104
def collection_display
  @collection_display ||= reader.collection_display
end
processing_status_code() click to toggle source
# File lib/exlibris/aleph/item.rb, line 116
def processing_status_code
  @processing_status_code ||= (reader.processing_status_code || '##')
end
processing_status_display() click to toggle source
# File lib/exlibris/aleph/item.rb, line 120
def processing_status_display
  @processing_status_display ||= reader.processing_status_display
end
reader() click to toggle source
# File lib/exlibris/aleph/item.rb, line 79
def reader
  @reader ||= API::Reader::Record::Item.new(root)
end
root() click to toggle source
# File lib/exlibris/aleph/item.rb, line 75
def root
  @root ||= client.root
end
status_code() click to toggle source
# File lib/exlibris/aleph/item.rb, line 108
def status_code
  @status_code ||= (reader.status_code || '##')
end
status_display() click to toggle source
# File lib/exlibris/aleph/item.rb, line 112
def status_display
  @status_display ||= reader.status_display
end
sub_library() click to toggle source
# File lib/exlibris/aleph/item.rb, line 87
def sub_library
  @sub_library ||=
    SubLibrary.new(sub_library_code, sub_library_display, admin_library)
end
sub_library_code() click to toggle source
# File lib/exlibris/aleph/item.rb, line 92
def sub_library_code
  @sub_library_code ||= reader.sub_library_code
end
sub_library_display() click to toggle source
# File lib/exlibris/aleph/item.rb, line 96
def sub_library_display
  @sub_library_display ||= reader.sub_library_display
end
tables_manager() click to toggle source
# File lib/exlibris/aleph/item.rb, line 128
def tables_manager
  @tables_manager ||= TablesManager.instance
end