Class: EdiParser::CarrierData
- Inherits:
-
Object
- Object
- EdiParser::CarrierData
- Defined in:
- lib/edi_parser/carrier_data.rb
Instance Attribute Summary collapse
-
#cnpj ⇒ String
The carrier cnpj.
-
#corporate_name ⇒ String
The carrier corporate name.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(attributes = {}) ⇒ CarrierData
constructor
A new instance of CarrierData.
Constructor Details
#initialize(attributes = {}) ⇒ CarrierData
Returns a new instance of CarrierData.
10 11 12 13 14 |
# File 'lib/edi_parser/carrier_data.rb', line 10 def initialize(attributes = {}) attributes.each do |key, value| __send__("#{key}=", value) end end |
Instance Attribute Details
#cnpj ⇒ String
Returns the carrier cnpj.
5 6 7 |
# File 'lib/edi_parser/carrier_data.rb', line 5 def cnpj @cnpj end |
#corporate_name ⇒ String
Returns the carrier corporate name.
8 9 10 |
# File 'lib/edi_parser/carrier_data.rb', line 8 def corporate_name @corporate_name end |
Class Method Details
.parse(line) ⇒ Object
16 17 18 19 |
# File 'lib/edi_parser/carrier_data.rb', line 16 def self.parse(line) raise InvalidCarrierDataError, "Line #{line} doesn't begin with 000 header (DADOS DA TRANSPORTADORA)" unless line.start_with?("341") CarrierData.new(cnpj: line[3..16].strip, corporate_name: line[17..56].strip) end |