Class: UspsApi::MailClass2

Inherits:
Object
  • Object
show all
Defined in:
lib/usps_api/models/mail_class2.rb

Overview

Numbers represent the mailClass within legacy systems for understanding 1 FIRST CLASS MAIL 2 PERIODICALS 3 USPS MARKETING MAIL (PREVIOUSLY STANDARD MAIL) 4 PACKAGE SERVICES 6 PARCEL SELECT 7 PRIORITY MAIL

Constant Summary collapse

MAIL_CLASS2 =
[
  # TODO: Write general description for FIRST_CLASS
  FIRST_CLASS = 'FIRST_CLASS'.freeze,

  # TODO: Write general description for PERIODICALS
  PERIODICALS = 'PERIODICALS'.freeze,

  # TODO: Write general description for USPS_MARKETING_MAIL
  USPS_MARKETING_MAIL = 'USPS_MARKETING_MAIL'.freeze,

  # TODO: Write general description for PACKAGE_SERVICES
  PACKAGE_SERVICES = 'PACKAGE_SERVICES'.freeze,

  # TODO: Write general description for PARCEL_SELECT
  PARCEL_SELECT = 'PARCEL_SELECT'.freeze,

  # TODO: Write general description for PRIORITY_MAIL
  PRIORITY_MAIL = 'PRIORITY_MAIL'.freeze,

  # TODO: Write general description for USPS_GROUND_ADVANTAGE
  USPS_GROUND_ADVANTAGE = 'USPS_GROUND_ADVANTAGE'.freeze
].freeze

Class Method Summary collapse

Class Method Details

.from_value(value, default_value = FIRST_CLASS) ⇒ Object



40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
# File 'lib/usps_api/models/mail_class2.rb', line 40

def self.from_value(value, default_value = FIRST_CLASS)
  return default_value if value.nil?

  str = value.to_s.strip

  case str.downcase
  when 'first_class' then FIRST_CLASS
  when 'periodicals' then PERIODICALS
  when 'usps_marketing_mail' then USPS_MARKETING_MAIL
  when 'package_services' then PACKAGE_SERVICES
  when 'parcel_select' then PARCEL_SELECT
  when 'priority_mail' then PRIORITY_MAIL
  when 'usps_ground_advantage' then USPS_GROUND_ADVANTAGE
  else
    default_value
  end
end

.validate(value) ⇒ Object



34
35
36
37
38
# File 'lib/usps_api/models/mail_class2.rb', line 34

def self.validate(value)
  return false if value.nil?

  MAIL_CLASS2.include?(value)
end