class Rockette::Controller

Manage Rockette in interactive mode

Public Class Methods

new() click to toggle source
# File lib/rockette/controller.rb, line 14
def initialize
  @conf = Psych.load(File.read(CONF))
  @pastel = Pastel.new
  @prompt = TTY::Prompt.new
end

Public Instance Methods

launch!() click to toggle source
# File lib/rockette/controller.rb, line 20
def launch!
  introduction

  if @conf["rockette"]["check_for_url"] && @conf["rockette"]["controller_url"].length < 10
    configurer = Rockette::Configurator.new
    configurer.first_run
  end

  # input/action loop
  loop do
    action = actions
    break if action == 5

    do_action(action)
  end
  conclusion
end

Private Instance Methods

actions() click to toggle source
# File lib/rockette/controller.rb, line 59
def actions
  @prompt.select("What would you like to do?", MAIN_ACTIONS)
end
conclusion() click to toggle source
# File lib/rockette/controller.rb, line 51
def conclusion
  puts
  puts "-" * 85
  puts @pastel.yellow("Have a good one!".upcase.center(85))
  puts "-" * 85
  puts
end
do_action(action) click to toggle source
# File lib/rockette/controller.rb, line 63
def do_action(action)
  case action
  when 1
    viewer = Rockette::Viewer.new
    viewer.launch!
  when 2
    deployer = Rockette::Deployer.new
    deployer.launch!
  when 3
    exporter = Rockette::Exporter.new
    exporter.launch!
  when 4
    configurer = Rockette::Configurator.new
    configurer.launch!
  else
    puts "\nI don't understand that command.\n\n"
  end
end
introduction() click to toggle source
# File lib/rockette/controller.rb, line 40
def introduction
  font = TTY::Font.new(:starwars)
  puts "-" * 85
  puts
  puts @pastel.yellow(font.write("Rockette"))
  puts
  puts "-" * 85
  puts "Rockette helps export and deploy APEX applications."
  puts
end