Class: Eco::CLI::Config::Filters::InputFilters

Inherits:
Eco::CLI::Config::Filters show all
Defined in:
lib/eco/cli/config/filters/input_filters.rb

Instance Attribute Summary

Attributes inherited from Eco::CLI::Config::Filters

#core_config

Instance Method Summary collapse

Methods inherited from Eco::CLI::Config::Filters

#add, #initialize

Constructor Details

This class inherits a constructor from Eco::CLI::Config::Filters

Instance Method Details

#helpObject



7
8
9
# File 'lib/eco/cli/config/filters/input_filters.rb', line 7

def help
  super("The following are the available filters on the input entries:")
end

#process(io:) ⇒ Object



11
12
13
14
15
16
17
18
19
20
21
22
23
# File 'lib/eco/cli/config/filters/input_filters.rb', line 11

def process(io:)
  unless io && io.is_a?(Eco::API::UseCases::BaseIO)
    raise "You need to provide Eco::API::UseCases::BaseIO object. Given: #{io.class}"
  end

  io = io.new(type: :import)
  @filters.each do |arg, callback|
    if SCR.get_arg(arg)
      io = io.new(input: callback.call(*io.params))
    end
  end
  io.input
end