From dea57321416e1e737ed2b1679a679d7d640d0baf Mon Sep 17 00:00:00 2001 From: Sebastian Sdorra Date: Wed, 13 Mar 2019 10:01:46 +0100 Subject: [PATCH] move dto parameters to constructor in order to create an immutable object --- .../sonia/scm/api/v2/resources/NamespaceStrategiesDto.java | 4 +++- .../scm/api/v2/resources/NamespaceStrategyResource.java | 7 +------ 2 files changed, 4 insertions(+), 7 deletions(-) diff --git a/scm-webapp/src/main/java/sonia/scm/api/v2/resources/NamespaceStrategiesDto.java b/scm-webapp/src/main/java/sonia/scm/api/v2/resources/NamespaceStrategiesDto.java index 4c7806ce31..f3c62fa0f9 100644 --- a/scm-webapp/src/main/java/sonia/scm/api/v2/resources/NamespaceStrategiesDto.java +++ b/scm-webapp/src/main/java/sonia/scm/api/v2/resources/NamespaceStrategiesDto.java @@ -12,7 +12,9 @@ public class NamespaceStrategiesDto extends HalRepresentation { private String current; private List available; - public NamespaceStrategiesDto(Links links) { + public NamespaceStrategiesDto(String current, List available, Links links) { super(links); + this.current = current; + this.available = available; } } diff --git a/scm-webapp/src/main/java/sonia/scm/api/v2/resources/NamespaceStrategyResource.java b/scm-webapp/src/main/java/sonia/scm/api/v2/resources/NamespaceStrategyResource.java index 8368504546..7b87c612d7 100644 --- a/scm-webapp/src/main/java/sonia/scm/api/v2/resources/NamespaceStrategyResource.java +++ b/scm-webapp/src/main/java/sonia/scm/api/v2/resources/NamespaceStrategyResource.java @@ -43,15 +43,10 @@ public class NamespaceStrategyResource { @Path("") @Produces(VndMediaType.NAMESPACE_STRATEGIES) public NamespaceStrategiesDto get(@Context UriInfo uriInfo) { - NamespaceStrategiesDto dto = new NamespaceStrategiesDto(createLinks(uriInfo)); - String currentStrategy = strategyAsString(namespaceStrategyProvider.get()); - dto.setCurrent(currentStrategy); - List availableStrategies = collectStrategyNames(); - dto.setAvailable(availableStrategies); - return dto; + return new NamespaceStrategiesDto(currentStrategy, availableStrategies, createLinks(uriInfo)); } private Links createLinks(@Context UriInfo uriInfo) {