Class: Paddock::Feature
- Inherits:
-
Object
- Object
- Paddock::Feature
- Defined in:
- lib/paddock.rb
Class Method Summary collapse
Instance Method Summary collapse
- #enabled? ⇒ Boolean
-
#initialize(name, envs, disabled) ⇒ Feature
constructor
A new instance of Feature.
Constructor Details
#initialize(name, envs, disabled) ⇒ Feature
Returns a new instance of Feature.
15 16 17 |
# File 'lib/paddock.rb', line 15 def initialize(name, envs, disabled) @name, @envs, @disabled = name, envs, disabled end |
Class Method Details
.add(name, envs, disabled = false) ⇒ Object
6 7 8 9 |
# File 'lib/paddock.rb', line 6 def self.add(name, envs, disabled=false) @features ||= {} @features[name] = new(name, envs, disabled) end |
.get(name) ⇒ Object
11 12 13 |
# File 'lib/paddock.rb', line 11 def self.get(name) (@features ||= {})[name] || raise(Paddock::FeatureNotFound.new("#{name} is not a valid feature.")) end |
Instance Method Details
#enabled? ⇒ Boolean
19 20 21 22 23 |
# File 'lib/paddock.rb', line 19 def enabled? result = true if @envs == :all result ||= Array(@envs).map { |env| env.to_sym }.include?(Paddock.environment.to_sym) @disabled ? (!result) : result end |