From dff586ff954680321c8d0387c2f1efbfe4364493 Mon Sep 17 00:00:00 2001 From: Daniel Klein Date: Wed, 21 Jan 2026 12:08:47 +0100 Subject: [PATCH 1/3] Change deleteSubmodelReferenceByIdAasRepository to return NO_CONTENT status --- .../aasrepository/http/AasRepositoryApiHTTPController.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/basyx.aasrepository/basyx.aasrepository-http/src/main/java/org/eclipse/digitaltwin/basyx/aasrepository/http/AasRepositoryApiHTTPController.java b/basyx.aasrepository/basyx.aasrepository-http/src/main/java/org/eclipse/digitaltwin/basyx/aasrepository/http/AasRepositoryApiHTTPController.java index 7b79d5cc0..acdb4c53f 100644 --- a/basyx.aasrepository/basyx.aasrepository-http/src/main/java/org/eclipse/digitaltwin/basyx/aasrepository/http/AasRepositoryApiHTTPController.java +++ b/basyx.aasrepository/basyx.aasrepository-http/src/main/java/org/eclipse/digitaltwin/basyx/aasrepository/http/AasRepositoryApiHTTPController.java @@ -105,7 +105,7 @@ public ResponseEntity putAssetAdministrationShellById( @Override public ResponseEntity deleteSubmodelReferenceByIdAasRepository(Base64UrlEncodedIdentifier aasIdentifier, Base64UrlEncodedIdentifier submodelIdentifier) { aasRepository.removeSubmodelReference(aasIdentifier.getIdentifier(), submodelIdentifier.getIdentifier()); - return new ResponseEntity(HttpStatus.OK); + return new ResponseEntity(HttpStatus.NO_CONTENT); } @Override From 4679067022d0c050ccfdff36ab4fe114247b6e3f Mon Sep 17 00:00:00 2001 From: Daniel Klein Date: Wed, 28 Jan 2026 09:57:47 +0100 Subject: [PATCH 2/3] Fix delete response assertion to expect NO_CONTENT status --- .../basyx/aasrepository/http/AasRepositoryHTTPSuite.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/basyx.aasrepository/basyx.aasrepository-http/src/test/java/org/eclipse/digitaltwin/basyx/aasrepository/http/AasRepositoryHTTPSuite.java b/basyx.aasrepository/basyx.aasrepository-http/src/test/java/org/eclipse/digitaltwin/basyx/aasrepository/http/AasRepositoryHTTPSuite.java index 1114eb0e0..73851bd70 100644 --- a/basyx.aasrepository/basyx.aasrepository-http/src/test/java/org/eclipse/digitaltwin/basyx/aasrepository/http/AasRepositoryHTTPSuite.java +++ b/basyx.aasrepository/basyx.aasrepository-http/src/test/java/org/eclipse/digitaltwin/basyx/aasrepository/http/AasRepositoryHTTPSuite.java @@ -280,7 +280,7 @@ public void removeSubmodelReference() throws FileNotFoundException, IOException, CloseableHttpResponse deleteResponse = BaSyxHttpTestUtils.executeDeleteOnURL(url); CloseableHttpResponse getResponse = BaSyxHttpTestUtils.executeGetOnURL(getSpecificAasSubmodelRefAccessURL(dummyAasId)); - assertEquals(200, deleteResponse.getCode()); + assertEquals(204, deleteResponse.getCode()); String response = BaSyxHttpTestUtils.getResponseAsString(getResponse); BaSyxHttpTestUtils.assertSameJSONContent(getSMReferenceRemovalJson(), getJSONWithoutCursorInfo(response)); From 93234d7e41dbb312b5cf1c0334e9fcc57e0dda2c Mon Sep 17 00:00:00 2001 From: Daniel Klein Date: Wed, 28 Jan 2026 10:51:22 +0100 Subject: [PATCH 3/3] Fix delete response assertion to expect NO_CONTENT status --- .../feature/authorization/TestAuthorizedAasRepository.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/basyx.aasrepository/basyx.aasrepository-feature-authorization/src/test/java/org/eclipse/digitaltwin/basyx/aasrepository/feature/authorization/TestAuthorizedAasRepository.java b/basyx.aasrepository/basyx.aasrepository-feature-authorization/src/test/java/org/eclipse/digitaltwin/basyx/aasrepository/feature/authorization/TestAuthorizedAasRepository.java index f0c7a2a98..2bca86822 100644 --- a/basyx.aasrepository/basyx.aasrepository-feature-authorization/src/test/java/org/eclipse/digitaltwin/basyx/aasrepository/feature/authorization/TestAuthorizedAasRepository.java +++ b/basyx.aasrepository/basyx.aasrepository-feature-authorization/src/test/java/org/eclipse/digitaltwin/basyx/aasrepository/feature/authorization/TestAuthorizedAasRepository.java @@ -427,7 +427,7 @@ public void removeSubmodelReferenceWithCorrectRoleAndPermission() throws IOExcep String accessToken = getAccessToken(DummyCredentialStore.BASYX_ASSET_UPDATER_CREDENTIAL); CloseableHttpResponse retrievalResponse = deleteElementWithAuthorization(getSpecificSubmodelReferenceUrl(SPECIFIC_SHELL_ID_2, "http://i40.customer.com/type/1/1/testSubmodel"), accessToken); - assertEquals(HttpStatus.OK.value(), retrievalResponse.getCode()); + assertEquals(HttpStatus.NO_CONTENT.value(), retrievalResponse.getCode()); deleteElementWithAuthorization(getSpecificAasAccessURL(SPECIFIC_SHELL_ID_2), getAccessToken(DummyCredentialStore.ADMIN_CREDENTIAL)); } @@ -439,7 +439,7 @@ public void removeSubmodelReferenceWithCorrectRoleAndSpecificAasPermission() thr String accessToken = getAccessToken(DummyCredentialStore.BASYX_ASSET_UPDATER_TWO_CREDENTIAL); CloseableHttpResponse retrievalResponse = deleteElementWithAuthorization(getSpecificSubmodelReferenceUrl(SPECIFIC_SHELL_ID_2, "http://i40.customer.com/type/1/1/testSubmodel"), accessToken); - assertEquals(HttpStatus.OK.value(), retrievalResponse.getCode()); + assertEquals(HttpStatus.NO_CONTENT.value(), retrievalResponse.getCode()); deleteElementWithAuthorization(getSpecificAasAccessURL(SPECIFIC_SHELL_ID_2), getAccessToken(DummyCredentialStore.ADMIN_CREDENTIAL)); }