Sha256: d595de548b7e3d424cb9a85e92279a54650fe459d8c0c22ec53e2c03d367dfbb
Contents?: true
Size: 1.08 KB
Versions: 12
Compression:
Stored size: 1.08 KB
Contents
module Eco module API # @todo the autoloading happens on `add`, and there could be multiple pending children to load. # This could translate into the policies not being loaded in order class Policies < Eco::API::UseCases autoloads_children_of "Eco::API::Common::Loaders::Policy" autoload_namespace_ignore "Eco::API" attr_reader :policies def define(name, type: :transform, &block) Eco::API::Policies::Policy.new(name, type: type, root: self, &block).tap do |policy| add(policy) end end def add(policy) raise "Expected Eco::API::Policies::Policy object. Given: #{policy}" unless policy.is_a?(Eco::API::Policies::Policy) super(policy) end def launch(people:, session:, job:, options: {}) args = { people: people, session: session, job: job, options: options } items.map do |policy| policy.launch(**args) end end end end end require_relative 'policies/policy'
Version data entries
12 entries across 12 versions & 1 rubygems