Class: RealPage::DocumentParser::Base
- Inherits:
-
Object
- Object
- RealPage::DocumentParser::Base
- Defined in:
- lib/real_page/document_parser/base.rb
Overview
Base class for parsing RealPage responses. Subclasses must implement #parse_body and can optionally override #validator_classes to add more validation than just the default
Direct Known Subclasses
FloorPlanObject, GuestCards, GuestCards::Amenities, GuestCards::Prospects, Leases, Picklist, RentMatrices, RentMatrices::Options, RentMatrices::Rows, UnitObject
Instance Attribute Summary collapse
-
#request_name ⇒ Object
readonly
Returns the value of attribute request_name.
-
#request_params ⇒ Object
readonly
Returns the value of attribute request_params.
Instance Method Summary collapse
-
#initialize(request_params: nil, request_name: nil) ⇒ Object
constructor
The parsed object(s) from the rsesponse.
- #parse(xml) ⇒ Object
Constructor Details
#initialize(request_params: nil, request_name: nil) ⇒ Object
Returns the parsed object(s) from the rsesponse.
20 21 22 23 |
# File 'lib/real_page/document_parser/base.rb', line 20 def initialize(request_params: nil, request_name: nil) @request_params = request_params @request_name = request_name end |
Instance Attribute Details
#request_name ⇒ Object (readonly)
Returns the value of attribute request_name.
33 34 35 |
# File 'lib/real_page/document_parser/base.rb', line 33 def request_name @request_name end |
#request_params ⇒ Object (readonly)
Returns the value of attribute request_params.
33 34 35 |
# File 'lib/real_page/document_parser/base.rb', line 33 def request_params @request_params end |
Instance Method Details
#parse(xml) ⇒ Object
25 26 27 28 29 30 31 |
# File 'lib/real_page/document_parser/base.rb', line 25 def parse(xml) parsed = MultiXml.parse(xml) [*DEFAULT_VALIDATOR_CLASSES, *validator_classes].each do |klass| klass.new(parsed, request_params, request_name).validate! end parse_body(parsed['s:Envelope']['s:Body']) end |