class Rigit::Commands::List::ListHandler

Internal class to handle listing of available rigs for the {CommandLine} class.

Attributes

args[R]
subfolder[R]

Public Class Methods

new(args) click to toggle source
# File lib/rigit/commands/list.rb, line 18
def initialize(args)
  @args = args
  @subfolder = args['SUBFOLDER']
end

Public Instance Methods

execute() click to toggle source
# File lib/rigit/commands/list.rb, line 23
def execute
  prefix = subfolder ? "Subfolders" : "Rigs"
  say "#{prefix} in !txtgrn!#{basedir}!txtrst!:"
  dirs.each do |file|
    say "- #{file}"
  end
end

Private Instance Methods

basedir() click to toggle source
# File lib/rigit/commands/list.rb, line 39
def basedir
  base = Rigit::Rig.home
  subfolder ? "#{base}/#{subfolder}" : base
end
dirs() click to toggle source
# File lib/rigit/commands/list.rb, line 33
def dirs
  files = Dir["#{basedir}/*"]
  files.select! { |f| File.directory? f }
  files.map { |f| File.basename f }.sort
end