Class: AbstractFeatureBranch::Configuration

Inherits:
Object
  • Object
show all
Defined in:
lib/abstract_feature_branch/configuration.rb

Instance Method Summary collapse

Instance Method Details

#application_environmentObject



12
13
14
# File 'lib/abstract_feature_branch/configuration.rb', line 12

def application_environment
  @application_environment ||= initialize_application_environment
end

#application_environment=(environment) ⇒ Object



15
16
17
# File 'lib/abstract_feature_branch/configuration.rb', line 15

def application_environment=(environment)
  @application_environment = environment
end

#application_rootObject



3
4
5
# File 'lib/abstract_feature_branch/configuration.rb', line 3

def application_root
  @application_root ||= initialize_application_root
end

#application_root=(path) ⇒ Object



6
7
8
# File 'lib/abstract_feature_branch/configuration.rb', line 6

def application_root=(path)
  @application_root = path
end

#cacheableObject



30
31
32
# File 'lib/abstract_feature_branch/configuration.rb', line 30

def cacheable
  @cacheable ||= initialize_cacheable
end

#cacheable=(cacheable) ⇒ Object



33
34
35
# File 'lib/abstract_feature_branch/configuration.rb', line 33

def cacheable=(cacheable)
  @cacheable = cacheable
end

#feature_storeObject Also known as: user_features_storage



45
46
47
# File 'lib/abstract_feature_branch/configuration.rb', line 45

def feature_store
  @feature_store ||= initialize_feature_store
end

#feature_store=(feature_store) ⇒ Object Also known as: user_features_storage=



50
51
52
# File 'lib/abstract_feature_branch/configuration.rb', line 50

def feature_store=(feature_store)
  @feature_store = feature_store
end

#initialize_application_environmentObject



18
19
20
# File 'lib/abstract_feature_branch/configuration.rb', line 18

def initialize_application_environment
  self.application_environment = defined?(Rails) ? Rails.env.to_s : ENV['APP_ENV'] || 'development'
end

#initialize_application_rootObject



9
10
11
# File 'lib/abstract_feature_branch/configuration.rb', line 9

def initialize_application_root
  self.application_root = defined?(Rails) ? Rails.root : '.'
end

#initialize_cacheableObject



36
37
38
39
40
41
42
43
# File 'lib/abstract_feature_branch/configuration.rb', line 36

def initialize_cacheable
  self.cacheable = {
    :development => false,
    :test => true,
    :staging => true,
    :production => true
  }
end

#initialize_feature_storeObject Also known as: initialize_user_features_storage



55
56
57
58
59
60
61
# File 'lib/abstract_feature_branch/configuration.rb', line 55

def initialize_feature_store
  self.feature_store = Redis.new
rescue => e
  logger.debug { "Redis is not enabled!" }
  logger.debug { e.full_message }
  nil
end

#initialize_loggerObject



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

def initialize_logger
  self.logger = defined?(Rails) && Rails.logger ? Rails.logger : Logger.new(STDOUT)
end

#loggerObject



21
22
23
# File 'lib/abstract_feature_branch/configuration.rb', line 21

def logger
  @logger ||= initialize_logger
end

#logger=(logger) ⇒ Object



24
25
26
# File 'lib/abstract_feature_branch/configuration.rb', line 24

def logger=(logger)
  @logger = logger
end