MapStruct: сопоставление свойства объекта с объектом верхнего уровня - PullRequest
0 голосов
/ 01 августа 2020

Рассмотрим следующие классы:

class ContributionDoc {
  private String contributorName;
  private String version;
  private int contributionNumber;
  private List<Contribution> contributions;
}
class Contribution {
  private String metadata;
}

Class ContributionDo c необходимо сопоставить с классом ContributionDocDto. Вклад класса необходимо сопоставить с классом ContributionDetails.

class ContributionEntity {
  private String contributorName;
  private int contributionNumber;
}

И класс ContributionDocDto, и ContributionDetails имеют ContributionEntity (потому что позже мы поняли, что ContributionEntity необходимо переместить из ContributionDocDto в ContributionDetails)

class ContributionDocDto {
  private ContributionEntity;
  private String docVersion;
  private List<Contribution> contributions;
}
class ContributionDetails {
  private ContributionEntity;
  private String metadata;
}

У меня есть сопоставители с обычными аннотациями из mapstruct

ContributionDocDto map (ContributionDoc doc)
ContributionDetails map (Contribution contrib)

Как я могу заполнить экземпляр ContributionEntity внутри ContributionDetails?

...