Class: HammerCLIForeman::RemoveAssociatedCommand

Inherits:
AssociatedCommand show all
Defined in:
lib/hammer_cli_foreman/commands.rb

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from AssociatedCommand

associated_resource, #associated_resource, #association_name, create_option_builder, #get_associated_identifier, #get_current_ids, #request_params

Methods inherited from Command

build_options, connection_name, create_option_builder, #customized_options, #dependency_resolver, dependency_resolver, #get_identifier, #get_resource_id, #get_resource_ids, #request_params, #resolver, resolver, resource_config, resource_name_mapping, searchables, #searchables, #send_request, #transform_format

Class Method Details

.command_name(name = nil) ⇒ Object



536
537
538
539
# File 'lib/hammer_cli_foreman/commands.rb', line 536

def self.command_name(name=nil)
  name = super(name) || (associated_resource ? "remove-"+associated_resource.singular_name : nil)
  name.respond_to?(:gsub) ? name.gsub('_', '-') : name
end

.desc(desc = nil) ⇒ Object



541
542
543
544
# File 'lib/hammer_cli_foreman/commands.rb', line 541

def self.desc(desc=nil)
  description = super(desc) || ''
  description.strip.empty? ? _("Disassociate a resource") : description
end

Instance Method Details

#get_new_idsObject



546
547
548
549
550
551
552
# File 'lib/hammer_cli_foreman/commands.rb', line 546

def get_new_ids
  ids = get_current_ids.map(&:to_s)
  required_id = get_associated_identifier.to_s

  ids = ids.delete_if { |id| id == required_id }
  ids
end