Module: Bluth::Handler

Included in:
ExampleHandler
Defined in:
lib/bluth.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.extended(obj) ⇒ Object



150
151
152
153
154
155
156
# File 'lib/bluth.rb', line 150

def self.extended(obj)
  obj.send :include, Familia
  obj.class_string :success
  obj.class_string :failure
  obj.class_string :running
  Bluth.handlers << obj
end

Instance Method Details

#allObject



182
183
184
185
186
# File 'lib/bluth.rb', line 182

def all
  Bluth::Gob.instances.select do |gob|
    gob.handler == self
  end
end

#enqueue(data = {}, q = nil) ⇒ Object



164
165
166
167
168
169
170
171
172
173
174
# File 'lib/bluth.rb', line 164

def enqueue(data={},q=nil)
  q = self.queue(q)
  gob = Gob.create generate_id(data), self, data
  gob.current_queue = q.name
  gob.created
  gob.attempts = 0
  gob.save
  Familia.ld "ENQUEUING: #{self} #{gob.jobid.short} to #{q}"
  q << gob.jobid
  gob
end

#generate_id(*args) ⇒ Object



179
180
181
# File 'lib/bluth.rb', line 179

def generate_id(*args)
  [self, Process.pid, Bluth.sysinfo.hostname, Time.now.to_f, *args].gibbler
end

#prepareObject



187
188
# File 'lib/bluth.rb', line 187

def prepare
end

#queue(name = nil) ⇒ Object



175
176
177
178
# File 'lib/bluth.rb', line 175

def queue(name=nil)
  @queue = name if name
  Bluth::Queue.send(@queue || :high)
end