Removed extra slash on outgoing fdn 58/142858/1
authorseanbeirne <sean.beirne@est.tech>
Tue, 6 Jan 2026 09:34:41 +0000 (09:34 +0000)
committerseanbeirne <sean.beirne@est.tech>
Tue, 6 Jan 2026 09:37:12 +0000 (09:37 +0000)
- Extra preceding slash added for longest match search
- Now will be removed when forwarding to dmi

Issue-ID: CPS-2707
Change-Id: Id81bb18ce0718dc7b63beb2a71ddebe1311e4cd5
Signed-off-by: seanbeirne <sean.beirne@est.tech>
cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/provmns/ParametersBuilder.java
cps-ncmp-service/src/test/groovy/org/onap/cps/ncmp/impl/provmns/ParametersBuilderSpec.groovy

index 56ce6ec..dc6a259 100644 (file)
@@ -56,8 +56,9 @@ public class ParametersBuilder {
                                                                     final ClassNameIdGetDataNodeSelectorParameter
                                                                         dataNodeSelector) {
         final String dmiServiceName = yangModelCmHandle.resolveDmiServiceName(DATA);
+        final String targetFdnWithoutPrecedingSlash = targetFdn.substring(1);
         return RestServiceUrlTemplateBuilder.newInstance()
-            .fixedPathSegment(targetFdn)
+            .fixedPathSegment(targetFdnWithoutPrecedingSlash)
             .queryParameter("scopeType", scope.getScopeType() != null ? scope.getScopeType().getValue() : null)
             .queryParameter("scopeLevel", scope.getScopeLevel() != null ? scope.getScopeLevel().toString() : null)
             .queryParameter("filter", filter)
@@ -76,8 +77,9 @@ public class ParametersBuilder {
     public UrlTemplateParameters createUrlTemplateParametersForWrite(final YangModelCmHandle yangModelCmHandle,
                                                                      final String targetFdn) {
         final String dmiServiceName = yangModelCmHandle.resolveDmiServiceName(DATA);
+        final String targetFdnWithoutPrecedingSlash = targetFdn.substring(1);
         return RestServiceUrlTemplateBuilder.newInstance()
-            .fixedPathSegment(targetFdn)
+            .fixedPathSegment(targetFdnWithoutPrecedingSlash)
             .createUrlTemplateParameters(dmiServiceName, "ProvMnS");
     }
 
index 12fac73..d273393 100644 (file)
@@ -41,7 +41,7 @@ class ParametersBuilderSpec extends Specification{
 
             )
         then: 'the template has the correct result'
-            assert result.urlTemplate.toString().startsWith('myDmiService/ProvMnS/v1//target/fdn?')
+            assert result.urlTemplate.toString().startsWith('myDmiService/ProvMnS/v1/target/fdn?')
         and: 'all url variables have been set correctly'
             assert result.urlVariables.size() == 6
             assert result.urlVariables.scopeLevel == '1'
@@ -72,7 +72,7 @@ class ParametersBuilderSpec extends Specification{
         when: 'Creating URL parameters for PUT (or PATCH)'
             def result = objectUnderTest.createUrlTemplateParametersForWrite(new YangModelCmHandle(dmiServiceName: 'myDmiService'),'/target/fdn')
         then: 'the template has the correct correct'
-            assert result.urlTemplate.toString().startsWith('myDmiService/ProvMnS/v1//target/fdn')
+            assert result.urlTemplate.toString().startsWith('myDmiService/ProvMnS/v1/target/fdn')
         and: 'no url variables have been set'
             assert result.urlVariables.isEmpty()
     }