Class: GLI::Commands::CompoundCommand
- Inherits:
-
GLI::Command
- Object
- GLI::CommandLineToken
- GLI::Command
- GLI::Commands::CompoundCommand
- Defined in:
- lib/gli/commands/compound_command.rb
Overview
A command that calls other commands in order
Constant Summary
Constants inherited from GLI::Command
Instance Attribute Summary
Attributes included from GLI::CommandSupport
Attributes inherited from GLI::CommandLineToken
#aliases, #description, #long_description, #name
Instance Method Summary collapse
-
#execute(global_options, options, arguments) ⇒ Object
:nodoc:.
-
#initialize(base, configuration, options = {}) ⇒ CompoundCommand
constructor
- base
- object that respondes to
commands
configuration -
Array of arrays: index 0 is the array of names of this command and index 1 is the names of the compound commands.
- object that respondes to
Methods inherited from GLI::Command
#action, #default_command, #default_desc, #has_option?, name_as_string, #name_for_help
Methods included from GLI::CommandSupport
#arg_name, #arguments_description, #arguments_options, #commands, #commands_declaration_order, #context_description, #default_description, #default_value, #desc, #flag, #flags, #get_default_command, #has_action?, #long_desc, #names, #nodoc, #skips_around, #skips_post, #skips_pre, #switch, #switches, #topmost_ancestor
Methods included from DSL
#arg_name, #clear_nexts, #command, #default_value, #desc, #flag, #flags_declaration_order, #long_desc, #switch, #switches_declaration_order
Methods inherited from GLI::CommandLineToken
Constructor Details
#initialize(base, configuration, options = {}) ⇒ CompoundCommand
- base
-
object that respondes to
commands
- configuration
-
Array of arrays: index 0 is the array of names of this command and index 1 is the names of the compound commands.
8 9 10 11 12 13 14 15 16 17 |
# File 'lib/gli/commands/compound_command.rb', line 8 def initialize(base,configuration,={}) name = configuration.keys.first super(.merge(:names => [name])) command_names = configuration[name] check_for_unknown_commands!(base,command_names) @wrapped_commands = command_names.map { |name| self.class.find_command(base,name) } end |
Instance Method Details
#execute(global_options, options, arguments) ⇒ Object
:nodoc:
19 20 21 22 23 |
# File 'lib/gli/commands/compound_command.rb', line 19 def execute(,,arguments) #:nodoc: @wrapped_commands.each do |command| command.execute(,,arguments) end end |