Base Managers¶
-
class
whalesong.managers.BaseManager(driver, manager_path='')¶ Bases:
objectBase manager.
Parameters: - driver (
BaseWhalesongDriver) – Whalesong driver - manager_path (
str) – Manager prefix path.
-
get_commands()¶ Get manager available static commands.
Return type: Result[List[str]]Returns: Manager static commands.
-
add_submanager(name, submanager)¶ Add a submanager.
Parameters: - name (
str) – Field where manager will be stored. - submanager (
BaseManager) – Submanager
- name (
-
remove_submanager(name)¶ Remove a submanager.
Parameters: name ( str) – Field where submanager was stored.Return type: Result[~T]
-
get_submanager(name)¶ Get a submanager.
Parameters: name ( str) – Field where submanager was stored.Return type: BaseManager
- driver (
-
class
whalesong.managers.BaseModelManager(driver, manager_path='')¶ Bases:
whalesong.managers.BaseManager,typing.GenericBase model manager.
Parameters: - driver (
BaseWhalesongDriver) – Whalesong driver - manager_path (
str) – Manager prefix path.
-
classmethod
map_model(data)¶ Return type: +MODEL_TYPE
-
classmethod
get_monitor_result_class()¶ Return type: MonitorResult[+MODEL_TYPE]
-
classmethod
get_field_monitor_result_class(field)¶ Return type: MonitorResult[Dict[str,Any]]
-
monitor_model()¶ Monitor any change on model.
Return type: MonitorResult[+MODEL_TYPE]Returns: Model monitor
- driver (
-
class
whalesong.managers.BaseCollectionManager(driver, manager_path='')¶ Bases:
whalesong.managers.BaseManager,typing.GenericBase collection manager.
Parameters: - driver (
BaseWhalesongDriver) – Whalesong driver - manager_path (
str) – Manager prefix path.
-
classmethod
get_monitor_result_class()¶ Return type: MonitorResult[+MODEL_TYPE]
-
classmethod
get_iterator_result_class()¶ Return type: IteratorResult[+MODEL_TYPE]
-
get_items()¶ Get all items on collection.
Return type: IteratorResult[+MODEL_TYPE]Returns: Async iterator
-
get_item_by_id(item_id)¶ Get model by identifier.
Parameters: item_id ( str) – Model identifier.Return type: Result[+MODEL_TYPE]Returns: Model object.
-
find_item_by_id(item_id)¶ Find model by identifier. If item is not in collection it will try to load it.
Parameters: item_id ( str) – Model identifier.Return type: Result[+MODEL_TYPE]Returns: Model object.
-
remove_item_by_id(item_id)¶ Remove item by identifier.
Parameters: item_id ( str) – Model identifier.Return type: Result[None]
-
monitor_add()¶ Monitor add item collection. Iterate each time a item is added to collection.
Return type: MonitorResult[+MODEL_TYPE]Returns: Model object iterator
-
monitor_remove()¶ Monitor remove item collection. Iterate each time a item is removed from collection.
Return type: MonitorResult[+MODEL_TYPE]Returns: Model object iterator
-
monitor_change()¶ Monitor change item collection. Iterate each time a item change in collection.
Return type: MonitorResult[+MODEL_TYPE]Returns: Model object iterator
-
monitor_field(field)¶ Monitor item’s field change. Iterate each time a field changed in any item of collection.
Return type: MonitorResult[Dict[str,Any]]Returns: Model object iterator
-
get_submanager(name)¶ Get a submanager. It could be a explicit submanager or contained model manager.
Parameters: name ( str) – Field where submanager was stored.Return type: Union[BaseManager, ~MODEL_MANAGER_TYPE]
- driver (