Class: God::Behavior
Instance Attribute Summary collapse
Class Method Summary
collapse
Instance Method Summary
collapse
#base_name, #complain, complain, #prepare, #reset
Instance Attribute Details
#watch ⇒ Object
Returns the value of attribute watch.
6
7
8
|
# File 'lib/god/behavior.rb', line 6
def watch
@watch
end
|
Class Method Details
.generate(kind, watch) ⇒ Object
Generate a Behavior of the given kind. The proper class is found by camel casing the kind (which is given as an underscored symbol).
+kind+ is the underscored symbol representing the class (e.g. foo_bar for God::Behaviors::FooBar)
11
12
13
14
15
16
17
18
|
# File 'lib/god/behavior.rb', line 11
def self.generate(kind, watch)
sym = kind.to_s.capitalize.gsub(/_(.)/){$1.upcase}.intern
b = God::Behaviors.const_get(sym).new
b.watch = watch
b
rescue NameError
raise NoSuchBehaviorError.new("No Behavior found with the class name God::Behaviors::#{sym}")
end
|
Instance Method Details
#after_restart ⇒ Object
35
36
|
# File 'lib/god/behavior.rb', line 35
def after_restart
end
|
#after_start ⇒ Object
29
30
|
# File 'lib/god/behavior.rb', line 29
def after_start
end
|
#after_stop ⇒ Object
41
42
|
# File 'lib/god/behavior.rb', line 41
def after_stop
end
|
#before_restart ⇒ Object
32
33
|
# File 'lib/god/behavior.rb', line 32
def before_restart
end
|
#before_start ⇒ Object
26
27
|
# File 'lib/god/behavior.rb', line 26
def before_start
end
|
#before_stop ⇒ Object
38
39
|
# File 'lib/god/behavior.rb', line 38
def before_stop
end
|
#friendly_name ⇒ Object
Construct the friendly name of this Behavior, looks like:
Behavior FooBar on Watch ‘baz’
47
48
49
|
# File 'lib/god/behavior.rb', line 47
def friendly_name
"Behavior " + super + " on Watch '#{self.watch.name}'"
end
|
#valid? ⇒ Boolean
20
21
22
|
# File 'lib/god/behavior.rb', line 20
def valid?
true
end
|