Class: Jcsv::CLR

Inherits:
Object
  • Object
show all
Includes:
Processors
Defined in:
lib/supercsv_interface.rb

Overview

Class CLR (CSV List Reader) wraps java CsvListReader.

Instance Attribute Summary

Attributes included from Processors

#dimensions, #key_array

Instance Method Summary collapse

Methods included from Processors

#executeProcessors, #headers

Constructor Details

#initialize(filereader, preferences, dimensions = nil, suppress_warnings) ⇒ CLR





151
152
153
154
155
# File 'lib/supercsv_interface.rb', line 151

def initialize(filereader, preferences, dimensions = nil, suppress_warnings)
  @dimensions = dimensions
  @suppress_warnings = suppress_warnings
  super(filereader, preferences)
end

Instance Method Details

#read(column_mapping, filters) ⇒ Object





161
162
163
164
165
166
167
168
169
170
171
172
173
# File 'lib/supercsv_interface.rb', line 161

def read(column_mapping, filters)

  # initialize @processed_columns to a new Array.  This will be used by method
  # executeProcessor from module Processors.  @column_mapping also needs to be initialized
  # to the column_mapping received. Used by methods in module Processors
  @processed_columns = Array.new
  @column_mapping = column_mapping
  
  data_read = (filters == false)? super([].to_java(CellProcessor)) :
                super(filters.values.to_java(CellProcessor))
  data_read.unshift(@key_array) if dimensions && data_read
  data_read
end