class Excavate::CLI
Constants
- STATUS_SUCCESS
- STATUS_TARGET_EXISTS
- STATUS_TARGET_NOT_EMPTY
- STATUS_UNKNOWN_ERROR
Public Class Methods
exit_on_failure?()
click to toggle source
# File lib/excavate/cli.rb, line 12 def self.exit_on_failure? false end
start(given_args = ARGV, config = {})
click to toggle source
Calls superclass method
# File lib/excavate/cli.rb, line 16 def self.start(given_args = ARGV, config = {}) args = if all_commands.key?(given_args[0]) given_args else given_args.dup.unshift("extract") end super(args, config) end
Public Instance Methods
extract(archive)
click to toggle source
# File lib/excavate/cli.rb, line 28 def extract(archive) target = Excavate::Archive.new(archive).extract(recursive_packages: options[:recursive]) success("Successfully extracted to #{File.basename(target)}/") rescue TargetExistsError => e error(e.message, STATUS_TARGET_EXISTS) rescue TargetNotEmptyError => e error(e.message, STATUS_TARGET_NOT_EMPTY) end
Private Instance Methods
error(message, status)
click to toggle source
# File lib/excavate/cli.rb, line 45 def error(message, status) say(message, :red) status end
success(message)
click to toggle source
# File lib/excavate/cli.rb, line 40 def success(message) say(message) STATUS_SUCCESS end