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 77 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
Protected Instance Methods
print_data(data)
click to toggle source
# File lib/hammer_cli/apipie/command.rb, line 61 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 70 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 49 def request_headers {} end
request_options()
click to toggle source
# File lib/hammer_cli/apipie/command.rb, line 53 def request_options {} end
request_params()
click to toggle source
# File lib/hammer_cli/apipie/command.rb, line 57 def request_params method_options(options) end
send_request()
click to toggle source
# File lib/hammer_cli/apipie/command.rb, line 41 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 66 def success_message_params(response) response end