lib/featureflow.rb in featureflow-0.5.1 vs lib/featureflow.rb in featureflow-0.6.0
- old
+ new
@@ -1,17 +1,39 @@
+require 'logger'
require 'featureflow/version'
+require 'featureflow/configuration'
require 'featureflow/client'
-require 'featureflow/context_builder'
+require 'featureflow/user_builder'
require 'featureflow/feature'
module Featureflow
class << self
- attr_writer :logger
+ def configure(config_hash = nil)
+ if config_hash
+ config_hash.each do |k, v|
+ configuration.send("#{k}=", v) rescue nil if configuration.respond_to?("#{k}=")
+ end
+ end
+ yield(configuration) if block_given?
+ end
+
+ def configuration
+ @configuration ||= Featureflow::Configuration.new
+ end
+
def logger
- @logger ||= Logger.new($stderr).tap do |log|
- log.progname = self.name
- end
+ configuration.logger
+ end
+
+ def client
+ @client ||= Featureflow::Client.new(configuration)
+ end
+
+ alias featureflow client
+
+ def evaluate(*args)
+ client.evaluate(*args)
end
end
end
require 'featureflow/rails/railtie' if defined?(Rails)
\ No newline at end of file