diff --git a/tools/python/jwutils/db/schema/Table.py b/tools/python/jwutils/db/schema/Table.py index 57efbec..1685ec1 100644 --- a/tools/python/jwutils/db/schema/Table.py +++ b/tools/python/jwutils/db/schema/Table.py @@ -34,6 +34,7 @@ class Table(abc.ABC): # export self.__log_columns: Optional[Iterable[str]] = None self.__translate_columns: Optional[Iterable[str]] = None self.__display_columns: Optional[Iterable[str]] = None + self.__default_sort_columns: Optional[Iterable[str]] = None self.__column_default: Optional[dict[str, Any]] = None self.__base_location_rule: Optional[Iterable[str]] = None self.__location_rule: Optional[Iterable[str]] = None @@ -132,6 +133,10 @@ class Table(abc.ABC): # export return None #return self._primary_keys() + @abc.abstractmethod + def _default_sort_columns(self) -> Iterable[str]: + return None + @abc.abstractmethod def _nullable_columns(self) -> Iterable[str]: pass @@ -339,6 +344,12 @@ class Table(abc.ABC): # export self.__display_columns = self._display_columns() return self.__display_columns + @property + def default_sort_columns(self): + if self.__default_sort_columns is None: + self.__default_sort_columns = self._default_sort_columns() + return self.__default_sort_columns + @property def auto_increment_columns(self) -> Iterable[str]: return self._auto_increment_columns()