class Troo::Commands::Status

Attributes

klass[R]

Public Class Methods

dispatch(klass) click to toggle source

@param [] @return [String]

# File lib/troo/cli/commands/status.rb, line 7
def dispatch(klass)
  new(klass).report_status
end
new(klass) click to toggle source

@param [] @return [Troo::Commands::Status]

# File lib/troo/cli/commands/status.rb, line 14
def initialize(klass)
  @klass = klass
end

Public Instance Methods

report_status() click to toggle source

@return [String]

# File lib/troo/cli/commands/status.rb, line 19
def report_status
  return success if resource
  error
end

Private Instance Methods

count() click to toggle source
# File lib/troo/cli/commands/status.rb, line 68
def count
  @count ||= klass.count
end
error() click to toggle source
# File lib/troo/cli/commands/status.rb, line 32
def error
  if count > 0
    label + no_default_error + " (#{count})"
  else
    label + "No #{type}s found.\n"
  end
end
label() click to toggle source
# File lib/troo/cli/commands/status.rb, line 40
def label
  "  #{type.capitalize}s:".ljust(10)
end
no_default_error() click to toggle source
# File lib/troo/cli/commands/status.rb, line 48
def no_default_error
  Esc.red + "No default #{type} set." + Esc.reset
end
plural() click to toggle source
# File lib/troo/cli/commands/status.rb, line 52
def plural
  if count == 1
    "#{count} #{type}"
  else
    "#{count} #{type}s"
  end
end
resource() click to toggle source
# File lib/troo/cli/commands/status.rb, line 64
def resource
  @resource ||= klass.default
end
resource_title() click to toggle source
# File lib/troo/cli/commands/status.rb, line 44
def resource_title
  ''.rjust(10) + resource.decorator.title
end
success() click to toggle source
# File lib/troo/cli/commands/status.rb, line 28
def success
  label + plural + " found.\n" + resource_title
end
type() click to toggle source
# File lib/troo/cli/commands/status.rb, line 60
def type
  klass.type.to_s
end