Class: HammerCLI::DefaultsCommand::ProvidersDefaultsCommand

Inherits:
HammerCLI::DefaultsCommand show all
Defined in:
lib/hammer_cli/defaults_commands.rb

Instance Method Summary collapse

Methods inherited from HammerCLI::DefaultsCommand

#added_default_message, #bad_input, #defaults_not_supported_by_provider, #param_deleted, #provider_prob_message, #variable_not_found

Methods inherited from AbstractCommand

build_options, #exception_handler, #help, #initialize, #interactive?, option_builder, output, #output, output_definition, #output_definition, #parent_command, #parse, #run, #validate_options, validate_options

Methods included from Subcommand

included

Constructor Details

This class inherits a constructor from HammerCLI::AbstractCommand

Instance Method Details

#adapterObject



49
50
51
# File 'lib/hammer_cli/defaults_commands.rb', line 49

def adapter
  @context[:adapter] || :table
end

#executeObject



27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
# File 'lib/hammer_cli/defaults_commands.rb', line 27

def execute
  data = context[:defaults].providers.map do |key, val|
    {
      :provider => key.to_s,
      :defaults => (val.supported_defaults || ['*']).map(&:to_s),
      :description => val.description
    }
  end

  fields = HammerCLI::Output::Dsl.new.build do
    field :provider, _('Provider')
    field :defaults, _('Supported defaults'), Fields::List
    field :description, _('Description')
  end

  definition = HammerCLI::Output::Definition.new
  definition.append(fields)

  print_collection(definition, data)
  HammerCLI::EX_OK
end