Sha256: 78e0cde19500161ea0b2e6e7885ccd7cc695cee36376bb69ae5107bce5f465bb
Contents?: true
Size: 1.19 KB
Versions: 2
Compression:
Stored size: 1.19 KB
Contents
require 'determinator/version' require 'determinator/control' require 'determinator/feature' require 'determinator/target_group' require 'determinator/retrieve/routemaster' require 'determinator/retrieve/null_retriever' module Determinator # @param :retrieval [Determinator::Retrieve::Routemaster] A retrieval instance for Features # @param :errors [#call, nil] a proc, accepting an error, which will be called with any errors which occur while determinating # @param :missing_feature [#call, nil] a proc, accepting a feature name, which will be called any time a feature is requested but isn't available def self.configure(retrieval:, errors: nil, missing_feature: nil) @error_logger = errors if errors.respond_to?(:call) @missing_feature_logger = missing_feature if missing_feature.respond_to?(:call) @instance = Control.new(retrieval: retrieval) end def self.instance raise "No singleton Determinator instance defined" unless @instance @instance end def self.notice_error(error) return unless @error_logger @error_logger.call(error) end def self.missing_feature(name) return unless @missing_feature_logger @missing_feature_logger.call(name) end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
determinator-0.11.1 | lib/determinator.rb |
determinator-0.11.0 | lib/determinator.rb |