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:

https://github.com/openedx/edx-toggles/blob/master/docs/how_to/implement_the_right_toggle_type.rst