module Batsir::StageWorker

Attributes

filter_queue[RW]

Public Class Methods

compile_from(stage) click to toggle source
# File lib/batsir/stage_worker.rb, line 29
def self.compile_from(stage)
  Batsir::Compiler::StageWorkerCompiler.new(stage).compile
end
included(base) click to toggle source
# File lib/batsir/stage_worker.rb, line 7
def self.included(base)
  Registry.register(base.stage_name, base)
  base.initialize_filter_queue
end

Public Instance Methods

execute(message) click to toggle source
# File lib/batsir/stage_worker.rb, line 16
def execute(message)
  return false if message.nil?
  return false unless @filter_queue
  @filter_queue.filters.each do |filter|
    message = filter.filter(message)
    return false if message.nil?
  end
  @filter_queue.notifiers.each do |notifier|
    notifier.notify(message)
  end
  true
end
perform(message) click to toggle source
# File lib/batsir/stage_worker.rb, line 12
def perform(message)
  execute(message)
end