Class: Inforouter::Responses::Folder

Inherits:
Base
  • Object
show all
Defined in:
lib/inforouter/responses/folder.rb

Overview

Response to an infoRouter Get Folder API call.

See www.inforouter.com/web-services-80/default.aspx?op=GetFolder

Instance Attribute Summary

Attributes inherited from Base

#raw

Class Method Summary collapse

Methods inherited from Base

error_message, #initialize, #match, parse_datetime, response_success, set_dsl

Constructor Details

This class inherits a constructor from Inforouter::Responses::Base

Class Method Details

.parse(savon_response) ⇒ Inforouter::Folder

Parse an infoRouter response.

Parameters:

  • savon_response (Savon::Response)

    SOAP response.

Returns:



16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
# File 'lib/inforouter/responses/folder.rb', line 16

def parse(savon_response)
  response = new(savon_response)
  data = response.match('get_folder_response/get_folder_result/response')
  return nil if data[:folder].nil?
  folder = data[:folder]
  Inforouter::Folder.new(
    property_sets: parse_property_sets(folder[:propertysets]),
    id: folder[:@folder_id].to_i,
    parent_id: folder[:@parent_id].to_i,
    name: folder[:@name].strip,
    path: folder[:@path].strip,
    description: folder[:@description].strip,
    creation_date: parse_datetime(folder[:@creation_date]),
    owner_name: folder[:@owner_name].strip,
    domain_id: folder[:@domain_id].to_i
  )
end