class Ocular::DSL::RunContext

Attributes

class_name[RW]
event_signature[RW]
logger[RW]
proxy[RW]
run_id[RW]

Public Class Methods

new(logger) click to toggle source
# File lib/ocular/dsl/runcontext.rb, line 29
def initialize(logger)
    @run_id = SecureRandom.uuid()
    @logger = logger
    @cleanups = []
end

Public Instance Methods

after_fork() click to toggle source
# File lib/ocular/dsl/runcontext.rb, line 53
def after_fork()
    @logger.reconnect()
end
cleanup() click to toggle source
# File lib/ocular/dsl/runcontext.rb, line 47
def cleanup()
    for i in @cleanups
        i.call()
    end
end
method_missing(method_sym, *arguments, &block) click to toggle source
# File lib/ocular/dsl/runcontext.rb, line 35
def method_missing(method_sym, *arguments, &block)
    if self.proxy
        self.proxy.send(method_sym, *arguments, &block)
    else
        raise NoMethodError, "undefined method `#{method_sym}` in event #{self.class_name}"
    end
end
register_cleanup(&block) click to toggle source
# File lib/ocular/dsl/runcontext.rb, line 43
def register_cleanup(&block)
    @cleanups << block
end