Sha256: ef9dbe0e82b535d4ede8ac5789b4d97ca0c8e42e5ed2e05d9aa2acc5e01bfd72
Contents?: true
Size: 1.17 KB
Versions: 11
Compression:
Stored size: 1.17 KB
Contents
# Author:: Eric Crane (mailto:eric.crane@mac.com) # Copyright:: Copyright (c) 2019 Eric Crane. All rights reserved. # # The Event Manager. # Run scripts in response to pre-defined events. # module Gloo module Core class EventManager # # Set up the event manager. # def initialize( engine ) @engine = engine @engine.log.debug 'event manager intialized...' end # # Run on_load scripts in the recently loaded object # If no obj is given the script will be run in root. # def on_load( obj = nil, in_heap = false ) return unless obj || in_heap @engine.log.debug 'on_load event' arr = Gloo::Core::ObjFinder.by_name( @engine, 'on_load', obj ) arr.each { |o| Gloo::Exec::Dispatch.message( @engine, 'run', o ) } end # # Run on_unload scripts in the object that will be unloaded. # def on_unload( obj ) return unless obj @engine.log.debug 'on_unload event' arr = Gloo::Core::ObjFinder.by_name( @engine, 'on_unload', obj ) arr.each { |o| Gloo::Exec::Dispatch.message( @engine, 'run', o ) } end end end end
Version data entries
11 entries across 11 versions & 1 rubygems