edx_toggles.toggles.internal.waffle package#

Submodules#

edx_toggles.toggles.internal.waffle.base module#

Base waffle toggle classes.

class edx_toggles.toggles.internal.waffle.base.BaseWaffle(name, module_name)#

Bases: BaseToggle

Base waffle toggle class, which performs waffle name validation.

classmethod validate_name(name)#

Ensure that the instance name is correctly namespaced. I.e: it contains a dot (“.”). This method should only be used by child classes, mostly for overriding purposes.

edx_toggles.toggles.internal.waffle.cache module#

Caching utilities for waffle toggles.

edx_toggles.toggles.internal.waffle.flag module#

Waffle flag classes.

class edx_toggles.toggles.internal.waffle.flag.NonNamespacedWaffleFlag(name, module_name, log_prefix='')#

Bases: WaffleFlag

Same as the WaffleFlag class, but does not require that the instance name be namespaced. This class is useful for migrating existing Flag objects; new instances should always be namespaced.

classmethod validate_name(name)#

Ensure that the instance name is correctly namespaced. I.e: it contains a dot (“.”). This method should only be used by child classes, mostly for overriding purposes.

class edx_toggles.toggles.internal.waffle.flag.WaffleFlag(name, module_name, log_prefix='')#

Bases: BaseWaffle

Represents a single waffle flag, enhanced with request-level caching.

static cached_flags()#

Returns a dictionary of all flags in the request cache. This method should only ever be used by child classes.

is_enabled()#

Returns whether or not the flag is enabled.

edx_toggles.toggles.internal.waffle.switch module#

New-style switch classes: these classes no longer depend on namespaces to be created.

class edx_toggles.toggles.internal.waffle.switch.NonNamespacedWaffleSwitch(name, module_name)#

Bases: WaffleSwitch

Same as the WaffleSwitch class, but does not require that the instance name be namespaced. This class is useful for migrating existing Switch objects; new instances should always be namespaced.

classmethod validate_name(name)#

Ensure that the instance name is correctly namespaced. I.e: it contains a dot (“.”). This method should only be used by child classes, mostly for overriding purposes.

class edx_toggles.toggles.internal.waffle.switch.WaffleSwitch(name, module_name)#

Bases: BaseWaffle

Represents a single waffle switch, enhanced with request-level caching.

is_enabled()#

Returns whether or not the switch is enabled.

Module contents#

Waffle classes in the context of edx-platform and other IDAs.

For detailed usage see:

openedx/edx-toggles