lib/celluloid/supervisor.rb in celluloid-0.2.2 vs lib/celluloid/supervisor.rb in celluloid-0.5.0

- old
+ new

@@ -1,29 +1,29 @@ module Celluloid # Supervisors are actors that watch over other actors and restart them if # they crash class Supervisor - include Actor + include Celluloid trap_exit :restart_actor # Retrieve the actor this supervisor is supervising attr_reader :actor def self.supervise(klass, *args, &block) - spawn(nil, klass, *args, &block) + new(nil, klass, *args, &block) end def self.supervise_as(name, klass, *args, &block) - spawn(name, klass, *args, &block) + new(name, klass, *args, &block) end def initialize(name, klass, *args, &block) @name, @klass, @args, @block = name, klass, args, block start_actor end def start_actor - @actor = @klass.spawn_link(*@args, &@block) + @actor = @klass.new_link(*@args, &@block) Celluloid::Actor[@name] = @actor if @name end # When actors die, regardless of the reason, restart them def restart_actor(actor, reason) \ No newline at end of file