1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
|
# frozen_string_literal: true
module BulkImports
class Stage
def initialize(bulk_import_entity)
unless bulk_import_entity.is_a?(::BulkImports::Entity)
raise(ArgumentError, 'Expected an argument of type ::BulkImports::Entity')
end
@bulk_import_entity = bulk_import_entity
@bulk_import = bulk_import_entity.bulk_import
end
def pipelines
@pipelines ||= config
.values
.sort_by { |entry| entry[:stage] }
end
private
attr_reader :bulk_import, :bulk_import_entity
def config
# To be implemented in a sub-class
NotImplementedError
end
end
end
|