class Exlibris::Primo::WebService::Request::Base

Abstract base class for Primo interactions

Constants

DEFAULT_WRAPPER

Attributes

base_url[W]
institution[W]
root[R]
wrapper[R]

Public Class Methods

new(*args) click to toggle source
Calls superclass method Exlibris::Primo::WriteAttributes::new
# File lib/exlibris/primo/web_service/request/base.rb, line 27
def initialize *args
  super
  @root = "#{self.class.name.demodulize}Request".camelize(:lower).to_sym
  @wrapper = DEFAULT_WRAPPER.id2name.camelize(:lower).to_sym
end

Public Instance Methods

to_xml() { |xml| ... } click to toggle source
# File lib/exlibris/primo/web_service/request/base.rb, line 33
def to_xml &block
  namespaces = request_namespaces
  build_xml { |xml|
    xml.send(wrapper) {
      xml.cdata build_xml { |xml|
        xml.send(root, namespaces) {
          yield xml if block
          xml << base_elements_xml
        }
      }
    }
  }
end