class PrimoCentralCounter::SoapDiscoverer

Public Class Methods

call(primo_base_url, options = {}) click to toggle source
# File lib/primo_central_counter/soap_discoverer.rb, line 7
def self.call(primo_base_url, options = {})
  logger = options[:logger]

  log_info(logger, "Retriving WSDL")
  wsdl_url = URI.parse("#{primo_base_url}/PrimoWebServices/services/searcher?wsdl")
  response = Net::HTTP.get_response(wsdl_url)
  doc = REXML::Document.new response.body
  doc.elements["//wsdl:service//wsdlsoap:address"].attributes["location"]
end

Private Class Methods

log_info(logger, message) click to toggle source
# File lib/primo_central_counter/soap_discoverer.rb, line 19
def self.log_info(logger, message)
  logger.info(message) if logger
end