В моей конкретной реализации EmployeeAccessService вызывается из репозитория. Это действительно фасад в антикоррупционном слое. Он делегирует EmployeeAccessAdapter. Адаптер извлекает объект из устаревшей модели (которую он получает из EmployeeAccessFacade), а затем передает его в EmployeeAccessTranslator для преобразования объекта из устаревшей модели в объект домена в модели моего приложения.
EmployeeAccessService
public Employee findEmployee(String empID){
return adapter.findEmployee(empID);
}
EmployeeAccessAdapter
public Employee findEmployee(String empID){
EmployeeAccessContainer container = facade.findEmployeeAccess(empID);
return translator.translate(container);
}
EmployeeAccessTranslator
public Employee translate(EmployeeAccessContainer container){
Employee emp = null;
if (container != null) {
employee = new Employee();
employee.setEmpID(idPrefix + container.getEmployeeDTO().getEmpID());
...(more complex mappings)