Module: Celerb::Task

Defined in:
lib/celerb/task.rb

Overview

Mixin for Celery tasks

Defined Under Namespace

Modules: ClassMethods

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.included(base) ⇒ Object



5
6
7
8
# File 'lib/celerb/task.rb', line 5

def self.included(base)
  base.extend ClassMethods
  base.send :attr_accessor, :queue
end

Instance Method Details

#delay(q = self.queue) ⇒ Object

Sends task to celery worker



11
12
13
# File 'lib/celerb/task.rb', line 11

def delay(q = self.queue)
  self.class.delay q, self.to_celery
end

#to_celeryObject

Should return valid arguments for task specified by #task_name

Raises:

  • (NotImplementedError)


16
17
18
# File 'lib/celerb/task.rb', line 16

def to_celery
  raise NotImplementedError, "You have to return Celery task arguments here"
end