Class: Hackle::FeatureFlagDecision

Inherits:
Object
  • Object
show all
Defined in:
lib/hackle/decision.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(is_on, reason, config) ⇒ FeatureFlagDecision

Returns a new instance of FeatureFlagDecision.

Parameters:



58
59
60
61
62
# File 'lib/hackle/decision.rb', line 58

def initialize(is_on, reason, config)
  @is_on = is_on
  @reason = reason
  @config = config
end

Instance Attribute Details

#configParameterConfig (readonly)

Returns:



53
54
55
# File 'lib/hackle/decision.rb', line 53

def config
  @config
end

#is_onboolean

Returns:

  • (boolean)


47
48
49
# File 'lib/hackle/decision.rb', line 47

def is_on
  @is_on
end

#reasonString

Returns:

  • (String)


50
51
52
# File 'lib/hackle/decision.rb', line 50

def reason
  @reason
end

Instance Method Details

#==(other) ⇒ Object



76
77
78
79
80
81
# File 'lib/hackle/decision.rb', line 76

def ==(other)
  other.is_a?(FeatureFlagDecision) &&
    is_on == other.is_on &&
    reason == other.reason &&
    config == other.config
end

#get(key, default_value = nil) ⇒ Object?

Parameters:

  • key (String)
  • default_value (Object, nil) (defaults to: nil)

Returns:

  • (Object, nil)


72
73
74
# File 'lib/hackle/decision.rb', line 72

def get(key, default_value = nil)
  config.get(key, default_value)
end

#on?boolean

Returns:

  • (boolean)


65
66
67
# File 'lib/hackle/decision.rb', line 65

def on?
  @is_on
end

#to_sObject



83
84
85
# File 'lib/hackle/decision.rb', line 83

def to_s
  "FeatureFlagDecision(is_on=#{is_on}, reason=#{reason}, config=#{config})"
end