Managers¶
Son clases que se encargan de gestionar toda la lógica de negocio, es aquí donde se implementan las acciones principales que determinan el comportamiento de la aplicación. Si la aplicación tiene como finalidad hacer inventarios y necesite actualizar algún producto, la acción no se ejecutará directamente sobre el modelo, para ello primero tendrá que acceder primero al coordinator encargado de hacer esta tarea de actualizar el producto.
La capa de infraestructura sólo podrá acceder a la capa de aplicación por medio de los Managers e Informers.
Código Ejemplo
Python
class RegistrationCoordinator:
def __init__(self,
occurrence_repository: OccurrenceRepository,
) -> None:
self.occurrence_repository = occurrence_repository
def register(self, occurrence_dict) -> None:
occurrence = Occurrence(**occurrence_dict)
self.occurrence_repository.add(occurrence)
JavaScript
export class ModelCoordinator {
constructor(
private modelRepository: ModelRepository,
) { }
addNewModel(model: Model): Observable<Model> {
return this.modelRepository.add(model);
}