Source code for minos.aggregate.actions

from __future__ import (
    annotations,
)

from enum import (
    Enum,
)


[docs]class Action(str, Enum): """Enum class that describes the actions.""" CREATE = "create" UPDATE = "update" DELETE = "delete"
[docs] @classmethod def value_of(cls, value: str) -> Action: """Get the action based on its text representation.""" for item in cls.__members__.values(): if item.value == value: return item raise ValueError(f"The given value does not match with any enum items. Obtained {value}")
@property def is_create(self) -> bool: """Check if the action is create. :return: A boolean value. """ return self is Action.CREATE @property def is_update(self) -> bool: """Check if the action is create. :return: A boolean value. """ return self is Action.UPDATE @property def is_delete(self) -> bool: """Check if the action is create. :return: A boolean value. """ return self is Action.DELETE