trackEnum

abstract fun <T : Enum<T>> trackEnum(feature: Feature, key: String, clazz: Class<T>, attributes: Attributes = Attributes(), executor: Executor, tracker: (T) -> Unit): TrackerReference

Registers a tracker for the value of an enumerated feature flag for the given key and attributes.

Return

a reference to the registered tracker allowing to un-register it

Parameters

feature

name of the feature flag to evaluate.

key

unique primary key for the entity the flag should be evaluated against.

clazz

the enum type.

attributes

additional attributes to provide to flag evaluation.

tracker

a tracker to be registered for processing of changed values

Throws

if the service is unavailable.

if the flag is off with no default value.


open fun <T : Enum<T>> trackEnum(feature: Feature, key: String, clazz: Class<T>, executor: Executor, tracker: (T) -> Unit): TrackerReference