Sha256: b1446c8d13ae27d7c955a974e17da6fd977236886785da22b12f88ed435c9b10
Contents?: true
Size: 897 Bytes
Versions: 3
Compression:
Stored size: 897 Bytes
Contents
require 'chronicle/etl' module Chronicle module ETL # Abstract class representing an Extractor for an ETL job class Extractor extend Chronicle::ETL::Catalog # Construct a new instance of this extractor. Options are passed in from a Runner # == Paramters: # options:: # Options for configuring this Extractor def initialize(options = {}) @options = options.transform_keys!(&:to_sym) end # Entrypoint for this Extractor. Called by a Runner. Expects a series of records to be yielded def extract raise NotImplementedError end # An optional method to calculate how many records there are to extract. Used primarily for # building the progress bar def results_count; end end end end require_relative 'csv_extractor' require_relative 'file_extractor' require_relative 'stdin_extractor'
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
chronicle-etl-0.2.2 | lib/chronicle/etl/extractors/extractor.rb |
chronicle-etl-0.2.1 | lib/chronicle/etl/extractors/extractor.rb |
chronicle-etl-0.2.0 | lib/chronicle/etl/extractors/extractor.rb |