Sha256: e86e7a94a9a210c496b71086a5ef5584e9e56e5fa07a84b9379490b67c460938
Contents?: true
Size: 799 Bytes
Versions: 1
Compression:
Stored size: 799 Bytes
Contents
require "optparse" class Ppl::Application::Shell attr_writer :router def run(input, output) outcome = false command = select_command(input) prepare_command(command, input) outcome = execute_command(command, input, output) return outcome end private def select_command(input) @router.route(input.arguments.shift) end def prepare_command(command, input) if !command.nil? && !command.is_a?(Ppl::Command::External) @optparse = OptionParser.new do |parser| command.options(parser, input.options) end @optparse.parse!(input.arguments) end end def execute_command(command, input, output) outcome = false if !command.nil? outcome = command.execute(input, output) end return outcome end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
ppl-1.17.0 | lib/ppl/application/shell.rb |