Class: Eco::CLI

Inherits:
Object show all
Defined in:
lib/eco/cli.rb,
lib/eco/cli/config.rb,
lib/eco/cli/scripting.rb,
lib/eco/cli/config/help.rb,
lib/eco/cli/config/input.rb,
lib/eco/cli/config/filters.rb,
lib/eco/cli/config/use_cases.rb,
lib/eco/cli/config/options_set.rb,
lib/eco/cli/scripting/argument.rb,
lib/eco/cli/scripting/arguments.rb,
lib/eco/cli/scripting/args_helpers.rb,
lib/eco/cli/config/filters/input_filters.rb,
lib/eco/cli/config/filters/people_filters.rb

Defined Under Namespace

Classes: Config, Scripting

Instance Method Summary collapse

Constructor Details

#initializeCLI

Returns a new instance of CLI.



4
5
6
# File 'lib/eco/cli.rb', line 4

def initialize
  @config = nil
end

Instance Method Details

#argsObject



8
9
10
# File 'lib/eco/cli.rb', line 8

def args
  ARGV
end

#configObject



16
17
18
19
20
21
# File 'lib/eco/cli.rb', line 16

def config
  @config ||= Eco::CLI::Config.new(cli: self)
  @config.tap do |cnf|
    yield(cnf) if block_given?
  end
end

#optionsObject



12
13
14
# File 'lib/eco/cli.rb', line 12

def options
  @options ||= {}
end

#run(session:) ⇒ Object



23
24
25
26
# File 'lib/eco/cli.rb', line 23

def run(session:)
  io = Eco::API::UseCases::BaseIO.new(session: session, options: options)
  session.workflow(io: io).run(io: io)
end