Class: CliLauncher

Inherits:
Object
  • Object
show all
Defined in:
lib/facter/framework/cli/cli_launcher.rb

Instance Method Summary collapse

Constructor Details

#initialize(args) ⇒ CliLauncher

Returns a new instance of CliLauncher.



11
12
13
# File 'lib/facter/framework/cli/cli_launcher.rb', line 11

def initialize(args)
  @args = args
end

Instance Method Details

#prepare_argumentsObject



19
20
21
22
23
24
25
# File 'lib/facter/framework/cli/cli_launcher.rb', line 19

def prepare_arguments
  @args.unshift(Facter::Cli.default_task) unless
    check_if_arguments_is_known(Facter::Cli.all_tasks, @args) ||
    check_if_arguments_is_known(Facter::Cli.instance_variable_get(:@map), @args)

  @args = reorder_program_arguments(@args)
end

#startObject



27
28
29
30
31
# File 'lib/facter/framework/cli/cli_launcher.rb', line 27

def start
  Facter::Cli.start(@args, debug: true)
rescue Thor::UnknownArgumentError => e
  Facter::OptionsValidator.write_error_and_exit("unrecognised option '#{e.unknown.first}'")
end

#validate_optionsObject



15
16
17
# File 'lib/facter/framework/cli/cli_launcher.rb', line 15

def validate_options
  Facter::OptionsValidator.validate(@args)
end