class Duracloud::CLI

Constants

COMMANDS
HELP
USAGE

Public Class Methods

call(*args) click to toggle source
# File lib/duracloud/cli.rb, line 48
def self.call(*args)
  new(*args).execute
rescue => e
  error!(e)
end
error!(exception) click to toggle source
# File lib/duracloud/cli.rb, line 40
def self.error!(exception)
  $stderr.puts exception.message
  if [ ArgumentError, CommandError, OptionParser::ParseError ].include?(exception.class)
    $stderr.puts HELP
  end
  exit(false)
end
new(*args) click to toggle source
Calls superclass method
# File lib/duracloud/cli.rb, line 54
def initialize(*args)
  super CommandOptions.parse(*args)
end

Public Instance Methods

execute() click to toggle source
# File lib/duracloud/cli.rb, line 58
def execute
  unless COMMANDS.include?(command)
    raise CommandError, "Invalid command: #{command.inspect}."
  end
  configure_client
  send(command, self)
end

Private Instance Methods

configure_client() click to toggle source
# File lib/duracloud/cli.rb, line 68
def configure_client
  Duracloud.user     = user     if user
  Duracloud.password = password if password
  Duracloud.host     = host     if host
  Duracloud.port     = port     if port

  Duracloud.silence_logging! unless logging
end