class HammerCLI::Apipie::Command
Public Class Methods
apipie_options(*args)
click to toggle source
# File lib/hammer_cli/apipie/command.rb, line 29 def self.apipie_options(*args) self.build_options(*args) end
create_option_builder()
click to toggle source
Calls superclass method
HammerCLI::AbstractCommand.create_option_builder
# File lib/hammer_cli/apipie/command.rb, line 21 def self.create_option_builder builder = super builder.builders += [ OptionBuilder.new(resource, resource.action(action), :require_options => false) ] if resource_defined? builder end
desc(desc=nil)
click to toggle source
Calls superclass method
HammerCLI::AbstractCommand.desc
# File lib/hammer_cli/apipie/command.rb, line 15 def self.desc(desc=nil) super(desc) || resource.action(action).apidoc[:apis][0][:short_description] || " " rescue " " end
Protected Class Methods
option(switches, type, description, opts = {}, &block)
click to toggle source
# File lib/hammer_cli/apipie/command.rb, line 85 def self.option(switches, type, description, opts = {}, &block) HammerCLI::Apipie::OptionDefinition.new(switches, type, description, opts).tap do |option| declared_options << option block ||= option.default_conversion_block define_accessors_for(option, &block) end end
Public Instance Methods
execute()
click to toggle source
# File lib/hammer_cli/apipie/command.rb, line 33 def execute d = send_request print_data(d) return HammerCLI::EX_OK end
help()
click to toggle source
Calls superclass method
HammerCLI::AbstractCommand#help
# File lib/hammer_cli/apipie/command.rb, line 39 def help help_str = super if !resource || (!action.nil? && !resource.has_action?(action)) help_str << "\n" + _("Unfortunately the server does not support such operation.") + "\n" end help_str end
Protected Instance Methods
print_data(data)
click to toggle source
# File lib/hammer_cli/apipie/command.rb, line 69 def print_data(data) print_collection(output_definition, data) unless output_definition.empty? print_success_message(data) unless success_message.nil? end
print_success_message(response)
click to toggle source
# File lib/hammer_cli/apipie/command.rb, line 78 def print_success_message(response) print_message( success_message, success_message_params(response) ) end
request_headers()
click to toggle source
# File lib/hammer_cli/apipie/command.rb, line 57 def request_headers {} end
request_options()
click to toggle source
# File lib/hammer_cli/apipie/command.rb, line 61 def request_options {} end
request_params()
click to toggle source
# File lib/hammer_cli/apipie/command.rb, line 65 def request_params method_options(options) end
send_request()
click to toggle source
# File lib/hammer_cli/apipie/command.rb, line 49 def send_request if resource && resource.has_action?(action) resource.call(action, request_params, request_headers, request_options) else raise HammerCLI::OperationNotSupportedError, "The server does not support such operation." end end
success_message_params(response)
click to toggle source
# File lib/hammer_cli/apipie/command.rb, line 74 def success_message_params(response) response end