Class: UspsApi::MailClass5

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

Overview

The mail service requested. Note: - ‘PARCEL_SELECT` with a `destinationEntryFacilityType` of `NONE` will convert to `USPS_GROUND_ADVANTAGE`. - `PARCEL_SELECT_LIGHTWEIGHT` is deprecated and will convert to `PARCEL_SELECT`. - `FIRST-CLASS_PACKAGE_SERVICE` is deprecated and will convert to `USPS_GROUND_ADVANTAGE`. - Certain mail classes, such as `MEDIA_MAIL`, `BOUND_PRINTED_MATTER`, and `LIBRARY_MAIL`, have eligibility rules on what can be mailed using that service. For more details on these mail classes, please visit [What are Package Services?](faq.usps.com/s/article/What-are-Package-Services).

Constant Summary collapse

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

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

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

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

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

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

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

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

  # TODO: Write general description for FIRSTCLASS_PACKAGE_SERVICE
  FIRSTCLASS_PACKAGE_SERVICE = 'FIRST-CLASS_PACKAGE_SERVICE'.freeze,

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

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

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

Class Method Summary collapse

Class Method Details

.from_value(value, default_value = PARCEL_SELECT) ⇒ Object



61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
# File 'lib/usps_api/models/mail_class5.rb', line 61

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

  str = value.to_s.strip

  case str.downcase
  when 'parcel_select' then PARCEL_SELECT
  when 'parcel_select_lightweight' then PARCEL_SELECT_LIGHTWEIGHT
  when 'usps_connect_local' then USPS_CONNECT_LOCAL
  when 'usps_connect_regional' then USPS_CONNECT_REGIONAL
  when 'usps_connect_mail' then USPS_CONNECT_MAIL
  when 'usps_ground_advantage' then USPS_GROUND_ADVANTAGE
  when 'priority_mail_express' then PRIORITY_MAIL_EXPRESS
  when 'priority_mail' then PRIORITY_MAIL
  when 'firstclass_package_service' then FIRSTCLASS_PACKAGE_SERVICE
  when 'library_mail' then LIBRARY_MAIL
  when 'media_mail' then MEDIA_MAIL
  when 'bound_printed_matter' then BOUND_PRINTED_MATTER
  else
    default_value
  end
end

.validate(value) ⇒ Object



55
56
57
58
59
# File 'lib/usps_api/models/mail_class5.rb', line 55

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

  MAIL_CLASS5.include?(value)
end