mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-08-14 17:58:59 +00:00
Merged HEAD (5.2) to 5.2.N (5.2.1)
127445 jkaabimofrad: Merged FILE-FOLDER-API (5.2.0) to HEAD (5.2) 127427 jkaabimofrad: RA-1052: Modified the upload API so that the failure of the async request to create a rendition wouldn't fail the upload. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/DEV/5.2.N/root@127475 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
@@ -2236,8 +2236,6 @@ public class NodesImpl implements Nodes
|
|||||||
|
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
List<ThumbnailDefinition> thumbnailDefs = getThumbnailDefs(renditionNames);
|
|
||||||
|
|
||||||
// Map the given properties, if any.
|
// Map the given properties, if any.
|
||||||
if (qnameStrProps.size() > 0)
|
if (qnameStrProps.size() > 0)
|
||||||
{
|
{
|
||||||
@@ -2272,9 +2270,23 @@ public class NodesImpl implements Nodes
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Create a new file.
|
// Create a new file.
|
||||||
Node fileNode = createNewFile(parentNodeRef, fileName, nodeTypeQName, content, properties, parameters);
|
final Node fileNode = createNewFile(parentNodeRef, fileName, nodeTypeQName, content, properties, parameters);
|
||||||
|
|
||||||
requestRenditions(thumbnailDefs, fileNode);
|
// RA-1052
|
||||||
|
try
|
||||||
|
{
|
||||||
|
List<ThumbnailDefinition> thumbnailDefs = getThumbnailDefs(renditionNames);
|
||||||
|
requestRenditions(thumbnailDefs, fileNode);
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
// Note: The log level is not 'error' as it could easily fill out the log file, especially in the Cloud.
|
||||||
|
if (logger.isDebugEnabled())
|
||||||
|
{
|
||||||
|
// Don't throw the exception as we don't want the the upload to fail, just log it.
|
||||||
|
logger.debug("Asynchronous request to create a rendition upon upload failed: " + ex.getMessage());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return fileNode;
|
return fileNode;
|
||||||
|
|
||||||
|
@@ -536,23 +536,31 @@ public class RenditionsTest extends AbstractBaseApiTest
|
|||||||
assertEquals(RenditionStatus.CREATED, rendition.getStatus());
|
assertEquals(RenditionStatus.CREATED, rendition.getStatus());
|
||||||
*/
|
*/
|
||||||
|
|
||||||
// -ve - currently we do not support multiple rendition requests on create
|
|
||||||
|
/*
|
||||||
|
* Per RA-1052, the failure of the async request to create a rendition
|
||||||
|
* should NOT fail the upload.
|
||||||
|
*/
|
||||||
|
|
||||||
|
// Currently we do not support multiple rendition requests on create
|
||||||
reqBody = MultiPartBuilder.create()
|
reqBody = MultiPartBuilder.create()
|
||||||
.setFileData(new FileData(fileName, file, MimetypeMap.MIMETYPE_PDF))
|
.setFileData(new FileData(fileName, file, MimetypeMap.MIMETYPE_PDF))
|
||||||
|
.setAutoRename(true)
|
||||||
.setRenditions(Arrays.asList(new String[]{"doclib,imgpreview"}))
|
.setRenditions(Arrays.asList(new String[]{"doclib,imgpreview"}))
|
||||||
.build();
|
.build();
|
||||||
|
|
||||||
post(getNodeChildrenUrl(folder_Id), userId, reqBody.getBody(), null, reqBody.getContentType(), 400);
|
post(getNodeChildrenUrl(folder_Id), userId, reqBody.getBody(), null, reqBody.getContentType(), 201);
|
||||||
|
|
||||||
// -ve
|
// Unknown rendition
|
||||||
reqBody = MultiPartBuilder.create()
|
reqBody = MultiPartBuilder.create()
|
||||||
.setFileData(new FileData(fileName, file, MimetypeMap.MIMETYPE_PDF))
|
.setFileData(new FileData(fileName, file, MimetypeMap.MIMETYPE_PDF))
|
||||||
|
.setAutoRename(true)
|
||||||
.setRenditions(Arrays.asList(new String[]{"unknown"}))
|
.setRenditions(Arrays.asList(new String[]{"unknown"}))
|
||||||
.build();
|
.build();
|
||||||
|
|
||||||
post(getNodeChildrenUrl(folder_Id), userId, reqBody.getBody(), null, reqBody.getContentType(), 404);
|
post(getNodeChildrenUrl(folder_Id), userId, reqBody.getBody(), null, reqBody.getContentType(), 201);
|
||||||
|
|
||||||
// -ve
|
// ThumbnailService is disabled
|
||||||
ThumbnailService thumbnailService = applicationContext.getBean("thumbnailService", ThumbnailService.class);
|
ThumbnailService thumbnailService = applicationContext.getBean("thumbnailService", ThumbnailService.class);
|
||||||
thumbnailService.setThumbnailsEnabled(false);
|
thumbnailService.setThumbnailsEnabled(false);
|
||||||
try
|
try
|
||||||
@@ -565,7 +573,7 @@ public class RenditionsTest extends AbstractBaseApiTest
|
|||||||
.setRenditions(Arrays.asList(new String[]{"doclib"}))
|
.setRenditions(Arrays.asList(new String[]{"doclib"}))
|
||||||
.build();
|
.build();
|
||||||
|
|
||||||
post(getNodeChildrenUrl(folder_Id), userId, reqBody.getBody(), null, reqBody.getContentType(), 501);
|
post(getNodeChildrenUrl(folder_Id), userId, reqBody.getBody(), null, reqBody.getContentType(), 201);
|
||||||
}
|
}
|
||||||
finally
|
finally
|
||||||
{
|
{
|
||||||
|
Reference in New Issue
Block a user