Class: Libis::Services::CollectiveAccess::Cataloguing

Inherits:
Connector
  • Object
show all
Defined in:
lib/libis/services/collective_access/cataloguing.rb

Instance Attribute Summary

Attributes inherited from Connector

#type_cast

Attributes included from SoapClient

#client

Instance Method Summary collapse

Methods inherited from Connector

#authenticate, #deauthenticate

Methods included from SoapClient

#configure, #operations, #request

Constructor Details

#initialize(host = nil) ⇒ Cataloguing

Returns a new instance of Cataloguing.



11
12
13
# File 'lib/libis/services/collective_access/cataloguing.rb', line 11

def initialize(host = nil)
  super 'Cataloguing', host
end

Instance Method Details

#add_attribute(item, attribute, data, type = nil) ⇒ Object



28
29
30
31
32
# File 'lib/libis/services/collective_access/cataloguing.rb', line 28

def add_attribute(item, attribute, data, type = nil)
  type ||= 'ca_objects'
  r, a = soap_encode data
  request :addAttribute, type: type, item_id: item, attribute_code_or_id: attribute.to_s, attribute_data_array: r, :attributes! => {attribute_data_array: a}
end

#add_attributes(item, data, type = nil) ⇒ Object



21
22
23
24
25
26
# File 'lib/libis/services/collective_access/cataloguing.rb', line 21

def add_attributes(item, data, type = nil)
  type ||= 'ca_objects'
  r, a = soap_encode data
  request :getAttributesByElement, type: type, item_id: item, attribute_code_or_id: attribute.to_s, attribute_list_array: r, :attributes! => {attribute_list_array: a}

end

#add_item(fields, type = nil) ⇒ Object



15
16
17
18
19
# File 'lib/libis/services/collective_access/cataloguing.rb', line 15

def add_item(fields, type = nil)
  type ||= 'ca_objects'
  r, a = soap_encode fields
  request :add, type: type, fieldInfo: r, :attributes! => {fieldInfo: a}
end

#remove(item, type = nil) ⇒ Object



34
35
36
37
# File 'lib/libis/services/collective_access/cataloguing.rb', line 34

def remove(item, type = nil)
  type ||= 'ca_objects'
  request :remove, type: type, item_id: item
end

#remove_attributes(item, type = nil) ⇒ Object



39
40
41
42
# File 'lib/libis/services/collective_access/cataloguing.rb', line 39

def remove_attributes(item, type = nil)
  type ||= 'ca_objects'
  request :removeAllAttributes, type: type, item_id: item
end