class CnabRb::Return::Cnab240::GenericReturn

Public Instance Methods

batches() click to toggle source
# File lib/cnab_rb/return/cnab240/generic_return.rb, line 56
def batches
  unless @batches.nil?
    return @batches
  end

  lastBatch = nil
  @batches = []

  @lines.each do |line|
    if line.registry_type == 1
      lastBatch = Batch.new
      @batches.push(lastBatch)
    end

    unless lastBatch.nil?
      if line.registry_type == 1
        lastBatch.header = line
      end

      if line.registry_type == 3
        lastBatch.segments << line
      end

      if line.registry_type == 5
        lastBatch.trailer = line
      end
    end
  end

  @batches
end
details() click to toggle source
# File lib/cnab_rb/return/cnab240/generic_return.rb, line 88
def details
  unless @details.nil?
    return @details
  end

  @details = batches.map{|b| b.details}.flatten
end
get_line_layout(line_text) click to toggle source
# File lib/cnab_rb/return/cnab240/generic_return.rb, line 3
def get_line_layout(line_text)
  registry_type_table = {
    '0' => :header_file,
    '1' => :header_batch,
    '3' => :segment,
    '5' => :trailer_batch,
    '9' => :trailer_file
  }

  registry_type = registry_type_table[line_text[7, 1]]
  segment_code = line_text[13, 1]

  unless registry_type.nil?
    if :segment == registry_type
      method_name = "segment_#{segment_code.downcase}_layout"
    else
      method_name = "#{registry_type}_layout"
    end

    if respond_to?(method_name)
      send(method_name)
    end
  end
end
header_batch_layout() click to toggle source
# File lib/cnab_rb/return/cnab240/generic_return.rb, line 32
def header_batch_layout
  CnabRb::Layouts::Cnab240::Generic::HeaderBatch.new
end
header_file_layout() click to toggle source
# File lib/cnab_rb/return/cnab240/generic_return.rb, line 28
def header_file_layout
  CnabRb::Layouts::Cnab240::Generic::HeaderFile.new
end
segment_t_layout() click to toggle source
# File lib/cnab_rb/return/cnab240/generic_return.rb, line 36
def segment_t_layout
  CnabRb::Layouts::Cnab240::Generic::Return::SegmentT.new
end
segment_u_layout() click to toggle source
# File lib/cnab_rb/return/cnab240/generic_return.rb, line 40
def segment_u_layout
  CnabRb::Layouts::Cnab240::Generic::Return::SegmentU.new
end
segment_w_layout() click to toggle source
# File lib/cnab_rb/return/cnab240/generic_return.rb, line 44
def segment_w_layout
  CnabRb::Layouts::Cnab240::Generic::Return::SegmentW.new
end
trailer_batch_layout() click to toggle source
# File lib/cnab_rb/return/cnab240/generic_return.rb, line 48
def trailer_batch_layout
  CnabRb::Layouts::Cnab240::Generic::TrailerBatch.new
end
trailer_file_layout() click to toggle source
# File lib/cnab_rb/return/cnab240/generic_return.rb, line 52
def trailer_file_layout
  CnabRb::Layouts::Cnab240::Generic::TrailerFile.new
end