class ThreeScaleToolbox::Commands::ApplicationCommand::Delete::DeleteSubcommand

Public Class Methods

command() click to toggle source
# File lib/3scale_toolbox/commands/application_command/delete_command.rb, line 8
          def self.command
            Cri::Command.define do
              name        'delete'
              usage       'delete [opts] <remote> <application>'
              summary     'delete application'
              description <<-HEREDOC
              Delete application'
              \n Application param allows:
              \n * User_key (API key)
              \n * App_id (from app_id/app_key pair) or Client ID (for OAuth and OpenID Connect authentication modes)
              \n * Application internal id
              HEREDOC

              param       :remote
              param       :application_ref

              runner DeleteSubcommand
            end
          end

Public Instance Methods

run() click to toggle source
# File lib/3scale_toolbox/commands/application_command/delete_command.rb, line 28
def run
  application.delete
  puts "Application id: #{application.id} deleted"
end

Private Instance Methods

application() click to toggle source
# File lib/3scale_toolbox/commands/application_command/delete_command.rb, line 35
def application
  @application ||= find_application
end
application_ref() click to toggle source
# File lib/3scale_toolbox/commands/application_command/delete_command.rb, line 49
def application_ref
  arguments[:application_ref]
end
find_application() click to toggle source
# File lib/3scale_toolbox/commands/application_command/delete_command.rb, line 39
def find_application
  Entities::Application.find(remote: remote, ref: application_ref).tap do |app|
    raise ThreeScaleToolbox::Error, "Application #{application_ref} does not exist" if app.nil?
  end
end
remote() click to toggle source
# File lib/3scale_toolbox/commands/application_command/delete_command.rb, line 45
def remote
  @remote ||= threescale_client(arguments[:remote])
end