module AutotaskRuby::Response

Attributes

entities[RW]
entity_type[RW]
errors[RW]
return_code[RW]

Public Class Methods

new(client, response) click to toggle source
# File lib/autotask_ruby/response.rb, line 8
def initialize(client, response)
  @client = client
  @entities = []
  @errors = response.xpath('//Autotask:Errors', Autotask: AutotaskRuby.configuration.namespace).text
  @return_code = response.xpath('//Autotask:ReturnCode', Autotask: AutotaskRuby.configuration.namespace).text.to_i
  @entity_type = response.xpath('//Autotask:EntityResultType', Autotask: AutotaskRuby.configuration.namespace).text.classify
  parse_entities(response.xpath('//Autotask:Entity', Autotask: AutotaskRuby.configuration.namespace))
end

Private Instance Methods

parse_entities(results) click to toggle source
# File lib/autotask_ruby/response.rb, line 19
def parse_entities(results)
  return [] if results.blank?

  klass = ('AutotaskRuby::' + results.first.attribute('type').to_s).constantize
  results.collect do |entity|
    obj = klass.new(client: @client)
    obj.build(entity)
    @entities.push(obj)
  end
end