class Jumpstarter::I_Instructions

I_Instrcutions This is an abstract class. And should not be init. This lays out the blueprint for all instructions The only method that must be overwritten is the run! method.

Public Class Methods

new(opts = {}) click to toggle source
# File lib/jumpstarter_core/instructions.rb, line 19
def initialize(opts = {})
    @dec = nil
    options = DEFAULTS.merge(opts)
    options.each do |k, v|
        v = self.clean_value(v)
        @dec = "#{@dec}\n\t#{k}: #{v},"
        instance_variable_set("@#{k}", v)
        self.class.send(:attr_reader, k)
    end
end

Public Instance Methods

clean_value(arg) click to toggle source
# File lib/jumpstarter_core/instructions.rb, line 56
def clean_value(arg)
    if arg == nil
        return "''"
    elsif !!arg == arg or (not "#{arg}".match(" "))
        return arg
    end
    return "#{arg}"
end
compose!() click to toggle source
# File lib/jumpstarter_core/instructions.rb, line 65
def compose!()
    str = "_inst_ret = #{self.class}.new(#{@dec.chomp(',')}".chomp()
    str = "#{str}\n).run!"
    str = "#{str}\nif _inst_ret"
    str = "#{str}\n\tJumpstarter::Writer.show_success(message: #{self.success_message!})"
    str = "#{str}\nelse"
    str = "#{str}\n\tJumpstarter::Writer.show_error(message: #{self.error_message!})"
    str = "#{str}\nend"
    return str
end
crash_on_error!() click to toggle source
# File lib/jumpstarter_core/instructions.rb, line 34
def crash_on_error!()
    return @should_crash
end
error_message!() click to toggle source
# File lib/jumpstarter_core/instructions.rb, line 47
def error_message!()
    message = ""
    if  not @msg_error or @msg_error.empty?
        message "[Error]"
    end
    message = @msg_success
    return message
end
options(ops) click to toggle source
# File lib/jumpstarter_core/instructions.rb, line 76
def options(ops)
    rows = []
    c = 0
    ops.each do |v|
        rows << [v, c]
        c = c + 1
    end
    return Terminal::Table.new :rows => rows
end
run!() click to toggle source
# File lib/jumpstarter_core/instructions.rb, line 30
def run!()
    return true
end
success_message!() click to toggle source
# File lib/jumpstarter_core/instructions.rb, line 38
def success_message!()
    message = ""
    if not @msg_success or @msg_success.empty?
        message = "[Success]"
    end
    message = @msg_success
    return message       
end