class Determinator::ActorControl

A decorator to provide syntactic sugar for Determinator::Control. Useful for contexts where the actor remains constant (eg. inside the request cycle in a webapp)

Attributes

controller[R]
default_properties[R]
guid[R]
id[R]

Public Class Methods

new(controller, id: nil, guid: nil, default_properties: {}) click to toggle source

@see Determinator::Control#for_actor

# File lib/determinator/actor_control.rb, line 9
def initialize(controller, id: nil, guid: nil, default_properties: {})
  @id = id
  @guid = guid
  @default_properties = default_properties
  @controller = controller
end

Public Instance Methods

feature_flag_on?(name, properties: {}) click to toggle source

@see Determinator::Control#feature_flag_on?

# File lib/determinator/actor_control.rb, line 27
def feature_flag_on?(name, properties: {})
  controller.feature_flag_on?(
    name,
    id: id,
    guid: guid,
    properties: default_properties.merge(properties)
  )
end
inspect() click to toggle source
# File lib/determinator/actor_control.rb, line 36
def inspect
  "#<Determinator::ActorControl id=#{id.inspect} guid=#{guid.inspect}>"
end
which_variant(name, properties: {}) click to toggle source

@see Determinator::Control#which_variant

# File lib/determinator/actor_control.rb, line 17
def which_variant(name, properties: {})
  controller.which_variant(
    name,
    id: id,
    guid: guid,
    properties: default_properties.merge(properties)
  )
end