У меня есть картографа между субъектом и DTO:Mapstruct: как квалифицировать функцию IterableMapping
@Mapper(componentModel="cdi", uses = { RegionMapper.class })
public interface ClusterMapper {
@Mapping(target="regions", ignore=true)
ClusterDto map(Cluster entity);
ClusterDto mapWithRegions(Cluster entity);
}
Первая функцией отображением является «простым отображением» в список объектов, вторые один для подробного Посмотреть. Я хотел бы иметь эквивалент списка, так что я аннотацию:
@Qualifier
@Target(ElementType.METHOD)
@Retention(RetentionPolicy.SOURCE)
public @interface Simple {
}
И добавить спецификатор к первой функции отображения и функции списка:
@Mapper(componentModel="cdi", uses={RegionMapper.class})
public interface ClusterMapper {
@Simple // <====
@Mapping(target="regions", ignore=true)
ClusterDto map(Cluster entity);
ClusterDto mapWithRegions(Cluster entity);
@IterableMapping(qualifiedBy = Simple.class) // <====
List<ClusterDto> map(List<Cluster> entities);
}
, но даже с @Simple
аннотаций, у меня есть сообщение об ошибке:
неоднозначных методов отображения найденных для сбора отображения элемента в ...
Как я могу сделать функцию List map(List)
«выбрать» первую функцию отображения?