Source code for LOGS.Entity.IGenericEntityOrderBy

from typing import Any, Dict, List, Optional, cast

from typing_extensions import Self

from LOGS.Auxiliary.Tools import Tools
from LOGS.Entity.SerializableContent import SerializableClass


[docs] class IBaseEntityOrderBy(SerializableClass): _value: Optional[str] = None _fieldNames: List[str] = []
[docs] def fromString(self, ref: str): fieldNames = self._getAttrList() if ref not in fieldNames: raise ValueError( f"Invalid value '{ref}' for {self.__class__.__name__}. (Expected one of {Tools.eclipsesJoin(', ', fieldNames, 5)})" ) self._value = ref
[docs] def listOptions(self) -> List[str]: return self._getAttrList()
[docs] def toDict(self) -> Dict[str, Any]: if self._value is None: return cast(Dict[str, None], None) return cast(Dict[str, None], self._value)
[docs] def contentToString(self, indentation: int = 1, hideNone: bool = False) -> str: return str(self.toDict())
CUSTOM_FIELD: Self = cast(Self, "CUSTOM_FIELD")
[docs] class IGenericEntitySortingOptions(IBaseEntityOrderBy): ID: Self = cast(Self, "ID")
[docs] class INamedEntitySortingOptions(IBaseEntityOrderBy): NAME: Self = cast(Self, "NAME")
[docs] class IEntryRecordSortingOptions(IBaseEntityOrderBy): ENTERED_BY: Self = cast(Self, "ENTERED_BY") ENTERED_ON: Self = cast(Self, "ENTERED_ON")
[docs] class IModificationRecordSortingOptions(IBaseEntityOrderBy): MODIFIED_BY: Self = cast(Self, "MODIFIED_BY") MODIFIED_ON: Self = cast(Self, "MODIFIED_ON")
[docs] class ITypedEntitySortingOptions(IBaseEntityOrderBy): CUSTOM_TYPE: Self = cast(Self, "CUSTOM_TYPE") CUSTOM_FIELD: Self = cast(Self, "CUSTOM_FIELD")