class Reponaut::Application::Command

Attributes

client[R]
repos[R]
username[R]

Public Class Methods

inherited(base) click to toggle source
Calls superclass method
# File lib/reponaut/command.rb, line 9
def inherited(base)
  subclasses << base
  super
end
new(prog) click to toggle source
# File lib/reponaut/command.rb, line 17
def initialize(prog); end
subclasses() click to toggle source
# File lib/reponaut/command.rb, line 5
def subclasses
  @subclasses ||= []
end

Public Instance Methods

process(options, args) click to toggle source
# File lib/reponaut/command.rb, line 19
def process(options, args)
  raise ArgumentError.new('You must specify a username') if args.empty?
  @username = args.first
  @client = Reponaut::GitHub::Client.new(username)
  @repos = client.repos.reject { |r| r.language.nil? }
  @repos = @repos.find_all { |r| r.source? } if options['ignore_forks']
rescue Reponaut::GitHub::NoSuchUserError
  quit 4, "No such user: #{username}"
rescue Reponaut::GitHub::RateLimitExceededError
  quit 5, 'GitHub rate limit exceeded. Try your request again later.'
end
quit(code, msg) click to toggle source
# File lib/reponaut/command.rb, line 31
def quit(code, msg)
  $stderr.puts msg
  exit code
end