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.
6 7 8 9 10 11 |
# File 'lib/cascade/data_parser.rb', line 6 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
17 18 19 20 21 22 23 |
# File 'lib/cascade/data_parser.rb', line 17 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 |