diff --git a/src/main/java/de/ozgcloud/aggregation/transformation/JSLTransformationService.java b/src/main/java/de/ozgcloud/aggregation/transformation/JSLTransformationService.java index 819e41566535142837dcd420e0c295848b111aeb..b835dc0aaa6e553dcb9b90fe9fa371e134676658 100644 --- a/src/main/java/de/ozgcloud/aggregation/transformation/JSLTransformationService.java +++ b/src/main/java/de/ozgcloud/aggregation/transformation/JSLTransformationService.java @@ -72,7 +72,7 @@ public class JSLTransformationService implements TransformationService { return JSLTransformation.builder() .vorgangMapper(vorgangMapper) .objectMapper(objectMapper) - .identifier(transformToDotExpression(identifier)) + .identifier(transformToAbstractNode(identifier)) .script(createExpression(transformToMap(getFieldMappings(mapping)))) .build(); } @@ -93,7 +93,7 @@ public class JSLTransformationService implements TransformationService { } Optional<PairExpression> toPairExpression(Map.Entry<String, String> mapping) { - return transformToDotExpression(mapping.getValue()).map(path -> buildPairExpression(mapping.getKey(), path)); + return transformToAbstractNode(mapping.getValue()).map(path -> buildPairExpression(mapping.getKey(), path)); } ObjectExpression buildObjectExpression(PairExpression... fields) { @@ -104,7 +104,7 @@ public class JSLTransformationService implements TransformationService { return new PairExpression(new LiteralExpression(new TextNode(key), null), expression, null); } - Optional<AbstractNode> transformToDotExpression(String path) { + Optional<AbstractNode> transformToAbstractNode(String path) { if (path == null) { return Optional.empty(); } else { @@ -125,8 +125,7 @@ public class JSLTransformationService implements TransformationService { private AbstractNode getNodeForListElement(AbstractNode current, Matcher arrayMatcher) { var index = Integer.parseInt(arrayMatcher.group(2)); var name = arrayMatcher.group(1); - current = slicer(current, name, index); - return current; + return slicer(current, name, index); } private ArraySlicer slicer(AbstractNode parent, String field, int index) { diff --git a/src/test/java/de/ozgcloud/aggregation/transformation/JSLTransformationServiceTest.java b/src/test/java/de/ozgcloud/aggregation/transformation/JSLTransformationServiceTest.java index 1fa74fd9d4d927f6bc057ec58a3fd7a299b2d1b4..3b4f811b7393192983c658016c4f10d4a49b98e5 100644 --- a/src/test/java/de/ozgcloud/aggregation/transformation/JSLTransformationServiceTest.java +++ b/src/test/java/de/ozgcloud/aggregation/transformation/JSLTransformationServiceTest.java @@ -84,7 +84,7 @@ class JSLTransformationServiceTest { void mock() { doReturn(mapping).when(service).transformToMap(any()); doReturn(expression).when(service).createExpression(any()); - doReturn(identifierExpression).when(service).transformToDotExpression(any()); + doReturn(identifierExpression).when(service).transformToAbstractNode(any()); } @Test @@ -126,7 +126,7 @@ class JSLTransformationServiceTest { void mock() { doReturn(mapping).when(service).transformToMap(any()); doReturn(expression).when(service).createExpression(any()); - doReturn(identifierExpression).when(service).transformToDotExpression(any()); + doReturn(identifierExpression).when(service).transformToAbstractNode(any()); } @Test @@ -277,7 +277,7 @@ class JSLTransformationServiceTest { @Test void shouldMapProperty() { - var expression = service.transformToDotExpression("vorgangName"); + var expression = service.transformToAbstractNode("vorgangName"); var mapped = expression.get().apply(Scope.getRoot(2), getVorgangTree()); assertThat(mapped).hasToString("\"%s\"".formatted(OzgCloudVorgangTestFactory.VORGANG_NAME)); @@ -286,7 +286,7 @@ class JSLTransformationServiceTest { @Test void shouldMapNestedProperty() { - var expression = service.transformToDotExpression("header.aktenzeichen"); + var expression = service.transformToAbstractNode("header.aktenzeichen"); var mapped = expression.get().apply(Scope.getRoot(2), getVorgangTree()); assertThat(mapped).hasToString("\"%s\"".formatted(OzgCloudVorgangHeaderTestFactory.AKTENZEICHEN)); @@ -295,7 +295,7 @@ class JSLTransformationServiceTest { @Test void shouldMapListElement() { - var expression = service.transformToDotExpression("eingangs[0]"); + var expression = service.transformToAbstractNode("eingangs[0]"); var mapped = expression.get().apply(Scope.getRoot(2), getVorgangTree()); @@ -305,7 +305,7 @@ class JSLTransformationServiceTest { @Test void shouldMapListElementProperty() { - var expression = service.transformToDotExpression("eingangs[0].header.formEngineName"); + var expression = service.transformToAbstractNode("eingangs[0].header.formEngineName"); var mapped = expression.get().apply(Scope.getRoot(2), getVorgangTree()); @@ -336,7 +336,7 @@ class JSLTransformationServiceTest { @BeforeEach void mock() { - doReturn(Optional.of(dotExpression)).when(service).transformToDotExpression(any()); + doReturn(Optional.of(dotExpression)).when(service).transformToAbstractNode(any()); doReturn(pairExpression).when(service).buildPairExpression(any(), any()); } @@ -361,7 +361,7 @@ class JSLTransformationServiceTest { @BeforeEach void mock() { - doReturn(Optional.empty()).when(service).transformToDotExpression(any()); + doReturn(Optional.empty()).when(service).transformToAbstractNode(any()); } @Test @@ -379,18 +379,18 @@ class JSLTransformationServiceTest { } @Nested - class TestTransformToDotExpression { + class TestTransformToAbstractNode { @Test void shouldReturnEmptyOnNullPath() { - var dotExpression = service.transformToDotExpression(null); + var dotExpression = service.transformToAbstractNode(null); assertThat(dotExpression).isEmpty(); } @Test void shouldMapProperty() { - var expression = service.transformToDotExpression("vorgangName"); + var expression = service.transformToAbstractNode("vorgangName"); var mapped = expression.get().apply(Scope.getRoot(2), getVorgangTree()); assertThat(mapped).hasToString("\"%s\"".formatted(OzgCloudVorgangTestFactory.VORGANG_NAME)); @@ -399,7 +399,7 @@ class JSLTransformationServiceTest { @Test void shouldMapNestedProperty() { - var expression = service.transformToDotExpression("header.aktenzeichen"); + var expression = service.transformToAbstractNode("header.aktenzeichen"); var mapped = expression.get().apply(Scope.getRoot(2), getVorgangTree()); assertThat(mapped).hasToString("\"%s\"".formatted(OzgCloudVorgangHeaderTestFactory.AKTENZEICHEN)); @@ -408,7 +408,7 @@ class JSLTransformationServiceTest { @Test void shouldMapListElement() { - var expression = service.transformToDotExpression("eingangs[0]"); + var expression = service.transformToAbstractNode("eingangs[0]"); var mapped = expression.get().apply(Scope.getRoot(2), getVorgangTree()); @@ -418,7 +418,7 @@ class JSLTransformationServiceTest { @Test void shouldMapListElementProperty() { - var expression = service.transformToDotExpression("eingangs[0].header.formEngineName"); + var expression = service.transformToAbstractNode("eingangs[0].header.formEngineName"); var mapped = expression.get().apply(Scope.getRoot(2), getVorgangTree());