package ru.hflabs.rcd.service; import ru.hflabs.rcd.RoleNames; import ru.hflabs.rcd.model.Identifying; import javax.annotation.security.RolesAllowed; /** * Интерфейс <class>INamedPathService</class> декларирует методы получения сущностей по их именованным путям * * @see ru.hflabs.rcd.model.path.DictionaryNamedPath * @see ru.hflabs.rcd.model.Named */ public interface INamedPathService<NP, T extends Identifying> { /** * Возвращает уникальную сущность по ее именованному пути с заполнением транзитивных зависимостей * * @param path именованный путь сущности * @param quietly флаг безопасной проверки существования сущности * @return Возвращает найденную сущность или <code>NULL</code>, если установлен флаг <i>quietly</i> и такой сущности не найдено */ @RolesAllowed(RoleNames.OPERATOR) T findUniqueByNamedPath(NP path, boolean quietly); }