Class: Cascade::DataParser
- Inherits:
-
Object
- Object
- Cascade::DataParser
- Defined in:
- lib/cascade/data_parser.rb
Instance Method Summary collapse
-
#call ⇒ Object
Starts parsing processing with opening file and iterating through each line with parsing and then saves result of each line parsing with DataSaver.
-
#initialize(options = {}) ⇒ DataParser
constructor
A new instance of DataParser.
Constructor Details
#initialize(options = {}) ⇒ DataParser
Returns a new instance of DataParser.
8 9 10 11 12 13 |
# File 'lib/cascade/data_parser.rb', line 8 def initialize( = {}) @data_provider = .fetch(:data_provider) { Registry.data_provider } @row_processor = .fetch(:row_processor) { Registry.row_processor } @error_handler = .fetch(:error_handler) { Registry.error_handler } @data_saver = .fetch(:data_saver) { Registry.data_saver } end |
Instance Method Details
#call ⇒ Object
Starts parsing processing with opening file and iterating through each line with parsing and then saves result of each line parsing with DataSaver
19 20 21 22 23 24 25 |
# File 'lib/cascade/data_parser.rb', line 19 def call @data_provider.each_with_index do |row, row_number| @error_handler.with_errors_handling(row) do @data_saver.call @row_processor.call(row), row_number end end end |