From 20db836e6cfb1fda5ee24e1a5fa0d3959e81c59a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Pfeuffer?= Date: Mon, 25 Jun 2018 15:21:38 +0200 Subject: [PATCH] Use dedicated instead of generic Method for members --- .../src/main/java/sonia/scm/api/v2/resources/GroupDto.java | 5 ++--- .../sonia/scm/api/v2/resources/GroupToGroupDtoMapper.java | 2 +- .../scm/api/v2/resources/GroupDtoToGroupMapperTest.java | 7 +++---- 3 files changed, 6 insertions(+), 8 deletions(-) diff --git a/scm-webapp/src/main/java/sonia/scm/api/v2/resources/GroupDto.java b/scm-webapp/src/main/java/sonia/scm/api/v2/resources/GroupDto.java index 37412967b7..b3a54cf379 100644 --- a/scm-webapp/src/main/java/sonia/scm/api/v2/resources/GroupDto.java +++ b/scm-webapp/src/main/java/sonia/scm/api/v2/resources/GroupDto.java @@ -25,8 +25,7 @@ public class GroupDto extends HalRepresentation { return super.add(links); } - @Override - protected HalRepresentation withEmbedded(String rel, List embeddedItems) { - return super.withEmbedded(rel, embeddedItems); + public HalRepresentation withMembers(List members) { + return super.withEmbedded("members", members); } } diff --git a/scm-webapp/src/main/java/sonia/scm/api/v2/resources/GroupToGroupDtoMapper.java b/scm-webapp/src/main/java/sonia/scm/api/v2/resources/GroupToGroupDtoMapper.java index f98ce7e66f..a9adab6f2c 100644 --- a/scm-webapp/src/main/java/sonia/scm/api/v2/resources/GroupToGroupDtoMapper.java +++ b/scm-webapp/src/main/java/sonia/scm/api/v2/resources/GroupToGroupDtoMapper.java @@ -41,7 +41,7 @@ public abstract class GroupToGroupDtoMapper extends BaseMapper @AfterMapping void mapMembers(Group group, @MappingTarget GroupDto target) { List memberDtos = group.getMembers().stream().map(this::createMember).collect(Collectors.toList()); - target.withEmbedded("members", memberDtos); + target.withMembers(memberDtos); } private MemberDto createMember(String name) { diff --git a/scm-webapp/src/test/java/sonia/scm/api/v2/resources/GroupDtoToGroupMapperTest.java b/scm-webapp/src/test/java/sonia/scm/api/v2/resources/GroupDtoToGroupMapperTest.java index 490f99c564..a82979dc9c 100644 --- a/scm-webapp/src/test/java/sonia/scm/api/v2/resources/GroupDtoToGroupMapperTest.java +++ b/scm-webapp/src/test/java/sonia/scm/api/v2/resources/GroupDtoToGroupMapperTest.java @@ -1,7 +1,6 @@ package sonia.scm.api.v2.resources; import com.fasterxml.jackson.databind.node.TextNode; -import de.otto.edison.hal.HalRepresentation; import org.junit.Test; import org.mapstruct.factory.Mappers; import sonia.scm.group.Group; @@ -23,12 +22,12 @@ public class GroupDtoToGroupMapperTest { public void shouldMapMembers() { GroupDto dto = new GroupDto(); - HalRepresentation member1 = new HalRepresentation(); + MemberDto member1 = new MemberDto(); member1.getAttributes().put("name", new TextNode("member1")); - HalRepresentation member2 = new HalRepresentation(); + MemberDto member2 = new MemberDto(); member2.getAttributes().put("name", new TextNode("member2")); - dto.withEmbedded("members", asList(member1, member2)); + dto.withMembers(asList(member1, member2)); Group group = Mappers.getMapper(GroupDtoToGroupMapper.class).map(dto);