module CzechPostB2bClient::ResponseCodes

Public Class Methods

all_classes() click to toggle source

must be at end to collect all classes defined before

# File lib/czech_post_b2b_client/response_codes.rb, line 2005
def self.all_classes
  base_class = CzechPostB2bClient::ResponseCodes::BaseCode
  ObjectSpace.each_object(base_class.singleton_class).reject { |c| c == base_class }
end
new_by_code(code, details = '') click to toggle source
# File lib/czech_post_b2b_client/response_codes.rb, line 2010
def self.new_by_code(code, details = '')
  klass = all_classes.detect { |k| k.code == code }
  raise "ResponseCode with code: #{code}  is unknown!" unless klass

  klass.new(details)
end