class MotherBrain::Cli::Base
Public Class Methods
register_subcommand(klass)
click to toggle source
Registers a SubCommand
with this Cli::Base
class
@param [MB::Cli::SubCommand] klass
# File lib/mb/cli/base.rb, line 12 def register_subcommand(klass) self.register(klass, klass.name.gsub('-', '_'), klass.usage.gsub('-', '_'), klass.description) end
ui()
click to toggle source
@return [MB::Cli::Shell::Color, MB::Cli::Shell::Basic]
# File lib/mb/cli/base.rb, line 17 def ui @ui ||= MB::Cli::Shell.shell.new end
Public Instance Methods
display_job(job)
click to toggle source
@param [MB::Job] job
# File lib/mb/cli/base.rb, line 24 def display_job(job) CliClient.new(job).display end
requires_one_of(*valid_options)
click to toggle source
# File lib/mb/cli/base.rb, line 36 def requires_one_of(*valid_options) valid_options = valid_options.flatten return if options.slice(*valid_options).any? valid_cli_arguments = valid_options.map { |key| key.to_s.dasherize.prepend('--') } ui.say "Requires one of #{valid_cli_arguments.join(', ')}" exit 1 end
ui()
click to toggle source
@return [MB::Cli::Shell::Color, MB::Cli::Shell::Basic]
# File lib/mb/cli/base.rb, line 32 def ui self.class.ui end