require_relative 'base' require 'amsi/request_section/property_list_filter' require 'amsi/document_parser/properties' module Amsi module Request # Retrieve resident leases for a given property. Returns current leases only # by default. # # No custom required initialization parameters; @see request/base.rb for # params required by every request. class GetPropertyList < Base def after_initialize( include_leasing_agents: false, include_marketing_sources: false, include_unit_types: false, property_id: nil ) @include_leasing_agents = include_leasing_agents @include_marketing_sources = include_marketing_sources @include_unit_types = include_unit_types @property_id = property_id end private def parser DocumentParser::Properties.new end def sections [ RequestSection::PropertyListFilter.new( include_leasing_agents: include_leasing_agents, include_marketing_sources: include_marketing_sources, include_unit_types: include_unit_types, property_id: property_id ) ] end attr_reader :include_leasing_agents, :include_marketing_sources, :include_unit_types, :property_id end end end