Base Managers¶
-
class
whalesong.managers.
BaseManager
(driver, manager_path='')¶ Bases:
object
Base 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.Generic
Base 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.Generic
Base 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 (