Module: HammerCLI

Defined in:
lib/hammer_cli/i18n.rb,
lib/hammer_cli/main.rb,
lib/hammer_cli/shell.rb,
lib/hammer_cli/utils.rb,
lib/hammer_cli/logger.rb,
lib/hammer_cli/context.rb,
lib/hammer_cli/modules.rb,
lib/hammer_cli/version.rb,
lib/hammer_cli/abstract.rb,
lib/hammer_cli/defaults.rb,
lib/hammer_cli/messages.rb,
lib/hammer_cli/settings.rb,
lib/hammer_cli/completer.rb,
lib/hammer_cli/validator.rb,
lib/hammer_cli/connection.rb,
lib/hammer_cli/exceptions.rb,
lib/hammer_cli/exit_codes.rb,
lib/hammer_cli/subcommand.rb,
lib/hammer_cli/logger_watch.rb,
lib/hammer_cli/option_builder.rb,
lib/hammer_cli/options/matcher.rb,
lib/hammer_cli/defaults_commands.rb,
lib/hammer_cli/exception_handler.rb,
lib/hammer_cli/options/normalizers.rb,
lib/hammer_cli/testing/data_helpers.rb,
lib/hammer_cli/testing/output_matchers.rb,
lib/hammer_cli/options/option_definition.rb,
lib/hammer_cli/testing/command_assertions.rb

Defined Under Namespace

Modules: Apipie, I18n, Logger, Messages, Options, Output, Subcommand, Testing Classes: AbstractCommand, AbstractConnector, AbstractOptionBuilder, BaseDefaultsProvider, CommandConflict, Completer, CompleterLine, CompleterWord, Connection, Defaults, DefaultsCommand, ExceptionHandler, MainCommand, ModuleDisabledButRequired, ModuleLoadingError, Modules, OperationNotSupportedError, OptionBuilderContainer, Settings, ShellCommand, ShellHistory, ShellMainCommand, Validator

Constant Summary collapse

DEFAULT_FILE =
"#{Dir.home}/.hammer/defaults.yml"
EX_OK =

taken from sysexits.h

0
EX_USAGE =

successful termination

64
EX_DATAERR =

command line usage error

65
EX_NOINPUT =

data format error

66
EX_NOUSER =

cannot open input

67
EX_NOHOST =

addressee unknown

68
EX_UNAVAILABLE =

host name unknown

69
EX_SOFTWARE =

service unavailable

70
EX_OSERR =

internal software error

71
EX_OSFILE =

system error (e.g., can’t fork)

72
EX_CANTCREAT =

critical OS file missing

73
EX_IOERR =

can’t create (user) output file

74
EX_TEMPFAIL =

input/output error

75
EX_PROTOCOL =

temp failure; user is invited to retry

76
EX_NOPERM =

remote error in protocol

77
EX_CONFIG =

permission denied

78
EX_NOT_FOUND =

non POSIX codes

128
EX_UNAUTHORIZED =

resource was not found

129

Class Method Summary collapse

Class Method Details

._option_accessor_name(name) ⇒ Object



13
14
15
# File 'lib/hammer_cli/options/option_definition.rb', line 13

def self._option_accessor_name(name)
  "option_#{name.to_s}".gsub('-', '_')
end

.constant_path(name) ⇒ Object



52
53
54
55
56
57
58
# File 'lib/hammer_cli/utils.rb', line 52

def self.constant_path(name)
  path = name.to_s.split('::').inject([Object]) do |mod, class_name|
    mod << mod[-1].const_get(class_name)
  end
  path.shift
  path
end

.contextObject



5
6
7
8
9
# File 'lib/hammer_cli/context.rb', line 5

def self.context
  {
    :defaults => HammerCLI.defaults
  }
end

.defaultsObject



96
97
98
99
# File 'lib/hammer_cli/defaults.rb', line 96

def self.defaults
  @defaults ||= Defaults.new(HammerCLI::Settings.settings[:defaults])

end

.interactive?Boolean

Returns:

  • (Boolean)


46
47
48
49
50
# File 'lib/hammer_cli/utils.rb', line 46

def self.interactive?
  return false unless STDOUT.tty?
  return HammerCLI::Settings.get(:_params, :interactive) unless HammerCLI::Settings.get(:_params, :interactive).nil?
  HammerCLI::Settings.get(:ui, :interactive) != false
end

.option_accessor_name(*name) ⇒ Object



5
6
7
8
9
10
11
# File 'lib/hammer_cli/options/option_definition.rb', line 5

def self.option_accessor_name(*name)
  if name.length > 1
    name.map { |n| _option_accessor_name(n) }
  else
    _option_accessor_name(name.first)
  end
end

.versionObject



2
3
4
# File 'lib/hammer_cli/version.rb', line 2

def self.version
  @version ||= Gem::Version.new '0.8.0'
end