Module: Signal
- Defined in:
- lib/signal.rb,
lib/signal/call.rb,
lib/signal/version.rb,
lib/signal/listener.rb,
lib/signal/active_record.rb
Defined Under Namespace
Modules: ActiveRecord, Call
Classes: Listener
Constant Summary
collapse
- VERSION =
'0.3.0'
Class Method Summary
collapse
Instance Method Summary
collapse
Class Method Details
.call ⇒ Object
2
3
4
|
# File 'lib/signal/call.rb', line 2
def self.call
Call
end
|
Instance Method Details
#add_listener(listener) ⇒ Object
22
23
24
25
|
# File 'lib/signal.rb', line 22
def add_listener(listener)
listeners << listener
self
end
|
#after(event, &block) ⇒ Object
17
18
19
20
|
# File 'lib/signal.rb', line 17
def after(event, &block)
listeners << Listener.new(self, __method__, event, &block)
self
end
|
#before(event, &block) ⇒ Object
12
13
14
15
|
# File 'lib/signal.rb', line 12
def before(event, &block)
listeners << Listener.new(self, __method__, event, &block)
self
end
|
#emit(event, *args) ⇒ Object
27
28
29
30
31
32
|
# File 'lib/signal.rb', line 27
def emit(event, *args)
emit_signal(:before, event, *args)
emit_signal(:on, event, *args)
emit_signal(:after, event, *args)
nil
end
|
#listeners ⇒ Object
34
35
36
|
# File 'lib/signal.rb', line 34
def listeners
@listeners ||= []
end
|
#on(event, &block) ⇒ Object
7
8
9
10
|
# File 'lib/signal.rb', line 7
def on(event, &block)
listeners << Listener.new(self, __method__, event, &block)
self
end
|