Sha256: 38a840fe548cb2c5c2138c986094f0c5eb9a38a1fe5dfc9408666654e2f07cc4
Contents?: true
Size: 1.06 KB
Versions: 2
Compression:
Stored size: 1.06 KB
Contents
module MelissaData module WebSmart module ResponseProcessor def process_property(response) codes = codes(response) if has_error_codes?(codes) { errors: codes_for(codes, 'error') } else response.merge!(success: codes_for(codes, 'success')) end end def codes_for(codes, type) codes.map { |c| method("property_#{type}_codes").call[c.to_sym] }.compact end def codes(response) response[:result][:code].split(",") end def has_error_codes?(codes) !codes.select { |c| c if property_error_codes.keys.include? c.to_sym }.empty? end def property_success_codes { YS01: "FIPS/APN Match found", YS02: "AddressKey Match found", YS03: "Basic information returned", YS04: "Detailed information returned" } end def property_error_codes { YE01: "No FIPS/APN or AddressKey provided", YE02: "No match found", YE03: "Invalid FIPS/APN or AddressKey provided" } end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
melissa_data-0.2.5 | lib/melissa_data/web_smart/response_processor.rb |
melissa_data-0.2.4 | lib/melissa_data/web_smart/response_processor.rb |