Class: HammerCLIForeman::Parameter::AbstractParameterCommand

Inherits:
Command
  • Object
show all
Defined in:
lib/hammer_cli_foreman/parameter.rb

Direct Known Subclasses

DeleteCommand, SetCommand

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Command

build_options, connection_name, #customized_options, #dependency_resolver, dependency_resolver, #exception_handler_class, #get_resource_id, #get_resource_ids, #option_sources, #request_params, #resolver, resolver, resource_config, resource_name_mapping, searchables, #searchables, #send_request, #transform_format

Class Method Details

.create_option_builderObject



37
38
39
40
41
42
43
# File 'lib/hammer_cli_foreman/parameter.rb', line 37

def self.create_option_builder
  builder = super
  builder.builders = [
    DependentSearchablesOptionBuilder.new(resource, searchables)
  ]
  builder
end

.parameter_resourceObject



9
10
11
# File 'lib/hammer_cli_foreman/parameter.rb', line 9

def self.parameter_resource
  HammerCLIForeman.foreman_resource!(:parameters)
end

Instance Method Details

#base_action_paramsObject



31
32
33
34
35
# File 'lib/hammer_cli_foreman/parameter.rb', line 31

def base_action_params
  {
    "#{resource.singular_name}_id" => get_identifier
  }
end

#get_identifierObject



17
18
19
20
# File 'lib/hammer_cli_foreman/parameter.rb', line 17

def get_identifier
  @identifier ||= get_resource_id(resource, :scoped => true)
  @identifier
end

#get_parameter_identifierObject



22
23
24
25
26
27
28
29
# File 'lib/hammer_cli_foreman/parameter.rb', line 22

def get_parameter_identifier
  if @parameter_identifier.nil?
    opts = all_options
    opts[HammerCLI.option_accessor_name("#{resource.singular_name}_id")] ||= get_identifier
    @parameter_identifier = resolver.send("#{parameter_resource.singular_name}_id", opts)
  end
  @parameter_identifier
end

#parameter_resourceObject



13
14
15
# File 'lib/hammer_cli_foreman/parameter.rb', line 13

def parameter_resource
  self.class.parameter_resource
end