module SBSM::ViralState
Constants
- VIRAL
Public Instance Methods
infect(newstate)
click to toggle source
# File lib/sbsm/viralstate.rb, line 31 def infect(newstate) @viral_modules.uniq.each { |mod| newstate.extend(mod) unless newstate.is_a?(mod) } newstate end
trigger(event)
click to toggle source
Calls superclass method
# File lib/sbsm/viralstate.rb, line 37 def trigger(event) newstate = super if(event==:logout) @session.logout else infect(newstate) end newstate rescue RangeError @session.logout home end