Sha256: 1fa377eb6f2871cbcaa12060af8641ce2575bc8b01c5e39aaf9d525dfec40167

Contents?: true

Size: 680 Bytes

Versions: 2

Compression:

Stored size: 680 Bytes

Contents

module Celluloid
  module Supervision
    class Container
      class Tree
        include Behavior

        identifier! :supervises, :supervise

        configuration do
          if @configuration[:supervise].is_a? Array
            @supervisor = @configuration.dup
            @branch = @configuration.fetch(:branch, @configuration[:as])
            @configuration.delete(Behavior.parameter(:supervise, @configuration))
          elsif @configuration[:supervise].is_a?(Celluloid::Supervision::Configuration)
            @configuration
          else
            raise ArgumentError, "No actors given to Tree to supervise."
          end
        end
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
celluloid-0.18.0 lib/celluloid/supervision/container/behavior/tree.rb
celluloid-0.18.0.pre2 lib/celluloid/supervision/container/behavior/tree.rb