From cec820bc88d02f4babe0c2af6418b628a27f16a3 Mon Sep 17 00:00:00 2001 From: montgolfiere Date: Tue, 11 Jan 2022 10:24:20 +0000 Subject: [PATCH] ACS-2391: ACS-2391: StorageObjectProps - add version content specific endpoints (#881) - fix blatant typo - thanks MP for detailed verification and feedback - Note: e2e API sanity check will be added as part of ACS-2406 --- .../NodeVersionsStorageInfoRelation.java | 64 ++++++++----------- 1 file changed, 28 insertions(+), 36 deletions(-) diff --git a/remote-api/src/main/java/org/alfresco/rest/api/nodes/NodeVersionsStorageInfoRelation.java b/remote-api/src/main/java/org/alfresco/rest/api/nodes/NodeVersionsStorageInfoRelation.java index f1d86703be..2628d891cf 100644 --- a/remote-api/src/main/java/org/alfresco/rest/api/nodes/NodeVersionsStorageInfoRelation.java +++ b/remote-api/src/main/java/org/alfresco/rest/api/nodes/NodeVersionsStorageInfoRelation.java @@ -86,15 +86,9 @@ public class NodeVersionsStorageInfoRelation implements RelationshipResourceActi { String contentPropQNameId = parameters.getRelationship2Id(); - Version version = nodeVersions.findVersion(nodeId, versionId); + NodeRef versionNodeRef = findVersionNodeRef(nodeId, versionId); - if (version != null) - { - NodeRef versionNodeRef = version.getFrozenStateNodeRef(); - return storageInformation.getStorageInfo(versionNodeRef, contentPropQNameId, parameters); - } - - throw new EntityNotFoundException(nodeId+"-"+versionId); + return storageInformation.getStorageInfo(versionNodeRef, contentPropQNameId, parameters); } @Experimental @@ -105,27 +99,21 @@ public class NodeVersionsStorageInfoRelation implements RelationshipResourceActi description = "Submits a request to send version content to archive", successStatus = HttpServletResponse.SC_OK) public void requestArchiveContent(String nodeId, String versionId, ArchiveContentRequest archiveContentRequest, Parameters parameters, - WithResponse withResponse) + WithResponse withResponse) { String contentPropQNameId = parameters.getRelationship2Id(); - Version version = nodeVersions.findVersion(nodeId, versionId); + NodeRef versionNodeRef = findVersionNodeRef(nodeId, versionId); - if (version != null) + final boolean result = storageInformation.requestArchiveContent(versionNodeRef, contentPropQNameId, archiveContentRequest); + if (result) { - NodeRef versionNodeRef = version.getFrozenStateNodeRef(); - final boolean result = storageInformation.requestArchiveContent(versionNodeRef, contentPropQNameId, archiveContentRequest); - if (result) - { - withResponse.setStatus(HttpServletResponse.SC_OK); - } - else - { - withResponse.setStatus(HttpServletResponse.SC_NOT_IMPLEMENTED); - } + withResponse.setStatus(HttpServletResponse.SC_OK); + } + else + { + withResponse.setStatus(HttpServletResponse.SC_NOT_IMPLEMENTED); } - - throw new EntityNotFoundException(nodeId+"-"+versionId); } @Experimental @@ -140,22 +128,26 @@ public class NodeVersionsStorageInfoRelation implements RelationshipResourceActi { String contentPropQNameId = parameters.getRelationship2Id(); - Version version = nodeVersions.findVersion(nodeId, versionId); + NodeRef versionNodeRef = findVersionNodeRef(nodeId, versionId); - if (version != null) + final boolean result = storageInformation.requestRestoreContentFromArchive(versionNodeRef, contentPropQNameId, restoreArchivedContentRequest); + if (result) { - NodeRef versionNodeRef = version.getFrozenStateNodeRef(); - final boolean result = storageInformation.requestRestoreContentFromArchive(versionNodeRef, contentPropQNameId, restoreArchivedContentRequest); - if (result) - { - withResponse.setStatus(HttpServletResponse.SC_ACCEPTED); - } - else - { - withResponse.setStatus(HttpServletResponse.SC_NOT_IMPLEMENTED); - } + withResponse.setStatus(HttpServletResponse.SC_ACCEPTED); } + else + { + withResponse.setStatus(HttpServletResponse.SC_NOT_IMPLEMENTED); + } + } - throw new EntityNotFoundException(nodeId+"-"+versionId); + private NodeRef findVersionNodeRef(String nodeId, String versionId) + { + Version version = nodeVersions.findVersion(nodeId, versionId); + if (version == null) + { + throw new EntityNotFoundException(nodeId+"-"+versionId); + } + return version.getFrozenStateNodeRef(); } }