module Elevate

Constants

VERSION

Public Class Methods

included(base) click to toggle source
# File lib/elevate/elevate.rb, line 2
def self.included(base)
  base.extend(ClassMethods)
end

Public Instance Methods

cancel(name) click to toggle source
# File lib/elevate/elevate.rb, line 16
def cancel(name)
  active_tasks.each do |task|
    if task.name == name
      task.cancel
    end
  end
end
cancel_all() click to toggle source
# File lib/elevate/elevate.rb, line 24
def cancel_all
  active_tasks.each do |task|
    task.cancel
  end
end
launch(name, args = {}) click to toggle source
# File lib/elevate/elevate.rb, line 30
def launch(name, args = {})
  raise ArgumentError, "args must be a Hash" unless args.is_a? Hash

  definition = self.class.task_definitions[name.to_sym]

  task = Task.new(definition, self, active_tasks)
  task.start(args)

  task
end
task_args() click to toggle source
# File lib/elevate/elevate.rb, line 41
def task_args
  @__elevate_task_args
end
task_args=(args) click to toggle source
# File lib/elevate/elevate.rb, line 45
def task_args=(args)
  @__elevate_task_args = args
end

Private Instance Methods

active_tasks() click to toggle source
# File lib/elevate/elevate.rb, line 51
def active_tasks
  @__elevate_active_tasks ||= []
end