Class: UspsApi::RateType

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

Overview

Rate type describes mail class and mail shape combination

Constant Summary collapse

RATE_TYPE =
[
  # TODO: Write general description for R
  R = 'R'.freeze,

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Class Method Summary collapse

Class Method Details

.from_value(value, default_value = R) ⇒ Object



122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
# File 'lib/usps_api/models/rate_type.rb', line 122

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

  str = value.to_s.strip

  case str.downcase
  when 'r' then R
  when 'l' then L
  when 'b' then B
  when 'c' then C
  when 's' then S
  when 's1' then S1
  when 's2' then S2
  when 's3' then S3
  when 's4' then S4
  when 's5' then S5
  when 's6' then S6
  when 's7' then S7
  when 'f' then F
  when 'a' then A
  when 'n' then N
  when 'p' then P
  when 't' then T
  when 'd' then D
  when 'x' then X
  when 'h' then H
  when 'm' then M
  when 'z' then Z
  when 'e' then E
  when 'e4' then E4
  when 'g' then G
  when 'enum_1' then ENUM_1
  when 'enum_2' then ENUM_2
  when 'enum_3' then ENUM_3
  when 'enum_4' then ENUM_4
  when 'j' then J
  when 'k' then K
  when 'v' then V
  when 'w' then W
  when 'y' then Y
  when 'q' then Q
  else
    default_value
  end
end

.validate(value) ⇒ Object



116
117
118
119
120
# File 'lib/usps_api/models/rate_type.rb', line 116

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

  RATE_TYPE.include?(value)
end