diff --git a/source/java/org/alfresco/repo/rendition/executer/AbstractRenderingEngine.java b/source/java/org/alfresco/repo/rendition/executer/AbstractRenderingEngine.java index 2bb2fc7adf..1fe698375a 100644 --- a/source/java/org/alfresco/repo/rendition/executer/AbstractRenderingEngine.java +++ b/source/java/org/alfresco/repo/rendition/executer/AbstractRenderingEngine.java @@ -980,6 +980,9 @@ public abstract class AbstractRenderingEngine extends ActionExecuterAbstractBase String renditionName = getRenditionName(tempRenditionNode, renditionLocation, renditionDefinition); nodeService.setProperty(renditionNode.getChildRef(), ContentModel.PROP_NAME, renditionName); // to manager + // Add temporary aspect for temporary rendition node + // When this node id deleted, will not appear in user's trashcan + nodeService.addAspect(tempRendition.getChildRef(), ContentModel.ASPECT_TEMPORARY, null); // Delete the temporary rendition. nodeService.removeChildAssociation(tempRendition); if (logger.isDebugEnabled()) diff --git a/source/test-java/org/alfresco/repo/rendition/RenditionServiceIntegrationTest.java b/source/test-java/org/alfresco/repo/rendition/RenditionServiceIntegrationTest.java index 00c2455bf6..d1faffdcc6 100644 --- a/source/test-java/org/alfresco/repo/rendition/RenditionServiceIntegrationTest.java +++ b/source/test-java/org/alfresco/repo/rendition/RenditionServiceIntegrationTest.java @@ -264,6 +264,7 @@ public class RenditionServiceIntegrationTest extends BaseAlfrescoSpringTest final QName renditionName = QName.createQName(NamespaceService.RENDITION_MODEL_1_0_URI, "htmlRenderingDefinition"); + int numberOfItemsInTrashcanBeforeRendition = getNumberOfItemsInTrashcan(); this.renditionNode = transactionHelper .doInTransaction(new RetryingTransactionHelper.RetryingTransactionCallback() { @@ -294,8 +295,24 @@ public class RenditionServiceIntegrationTest extends BaseAlfrescoSpringTest } }); + //testcase for MNT-14386 + int numberOfItemsInTrashcanAfterRendition = getNumberOfItemsInTrashcan(); + assertEquals(numberOfItemsInTrashcanBeforeRendition, numberOfItemsInTrashcanAfterRendition); + } - + + /** + * This method returns the number of items from trashcan + * + * @return int + */ + private int getNumberOfItemsInTrashcan() + { + NodeRef archiveRootNodeRef = nodeService.getRootNode(StoreRef.STORE_REF_ARCHIVE_SPACESSTORE); + return nodeService.countChildAssocs(archiveRootNodeRef, true); + + } + public void testRenderFreeMarkerTemplateOneTransaction() throws Exception { this.setComplete(); @@ -1934,7 +1951,7 @@ public class RenditionServiceIntegrationTest extends BaseAlfrescoSpringTest assertEquals(MimetypeMap.MIMETYPE_FLASH, webpreviewRenditionDef.getParameterValue(AbstractRenderingEngine.PARAM_MIME_TYPE)); assertEquals(MimetypeMap.MIMETYPE_IMAGE_PNG, avatarRenditionDef.getParameterValue(AbstractRenderingEngine.PARAM_MIME_TYPE)); } - + /** * This test checks that for a node with an existing rendition, that if you update its content with content * that cannot be renditioned (thumbnailed), that existing rendition nodes for failed re-renditions are removed.