Module: Iodized

Defined in:
lib/iodized/middleware.rb,
lib/iodized.rb,
lib/iodized/client.rb,
lib/iodized/config.rb,
lib/iodized/version.rb,
lib/iodized/features.rb,
lib/iodized/feature_types.rb,
lib/iodized/feature_constants.rb

Overview

encoding utf-8

Defined Under Namespace

Modules: Features Classes: Client, Config, IodizedRailtie, Middleware

Constant Summary collapse

VERSION =
"0.0.1"

Class Method Summary collapse

Class Method Details

.clientObject



23
24
25
# File 'lib/iodized.rb', line 23

def self.client
  @client ||= Iodized::Client.new
end

.client=(client) ⇒ Object



27
28
29
# File 'lib/iodized.rb', line 27

def self.client=(client)
  @client = client
end

.configObject



31
32
33
# File 'lib/iodized.rb', line 31

def self.config
  @config ||= Iodized::Config.new
end

.do?(feature, state) ⇒ Boolean

Returns:

  • (Boolean)


10
11
12
13
14
15
16
17
# File 'lib/iodized.rb', line 10

def self.do?(feature, state)
  feature_set = if Thread.current[:iodized_feature_set]
                  Thread.current[:iodized_feature_set]
                else
                  Thread.current[:iodized_feature_set] = client.feature_set(state)
                end
  feature_set[feature.to_s] || false
end

.reset_feature_set!Object



19
20
21
# File 'lib/iodized.rb', line 19

def self.reset_feature_set!
  Thread.current[:iodized_feature_set] = nil
end