Class: HammerCLIForeman::AssociatedResourceListCommand

Inherits:
ListCommand
  • Object
show all
Defined in:
lib/hammer_cli_foreman/commands.rb

Constant Summary

Constants inherited from ListCommand

ListCommand::DEFAULT_PER_PAGE

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from ListCommand

#adapter, command_name, #execute, #extend_data, #send_request

Methods inherited from Command

build_options, connection_name, #customized_options, #dependency_resolver, dependency_resolver, #get_identifier, #get_resource_id, #resolver, resolver, resource_config, resource_name_mapping, #searchables, searchables, #send_request

Class Method Details

.create_option_builderObject



279
280
281
282
283
284
# File 'lib/hammer_cli_foreman/commands.rb', line 279

def self.create_option_builder
  builder = super
  builder.builders << SearchablesOptionBuilder.new(parent_resource, searchables)
  builder.builders << IdOptionBuilder.new(parent_resource)
  builder
end

.parent_resource(name = nil) ⇒ Object



273
274
275
276
277
# File 'lib/hammer_cli_foreman/commands.rb', line 273

def self.parent_resource(name=nil)
  @parent_api_resource = HammerCLIForeman.foreman_resource!(name) unless name.nil?
  return @parent_api_resource if @parent_api_resource
  return superclass.parent_resource if superclass.respond_to? :parent_resource
end

Instance Method Details

#parent_resourceObject



269
270
271
# File 'lib/hammer_cli_foreman/commands.rb', line 269

def parent_resource
  self.class.parent_resource
end

#request_paramsObject



286
287
288
289
290
291
292
# File 'lib/hammer_cli_foreman/commands.rb', line 286

def request_params
  id_param_name = "#{parent_resource.singular_name}_id"

  params = super
  params[id_param_name] = get_resource_id(parent_resource)
  params
end