From 89c224d811d332a318937241bf94ea1a1feb7d21 Mon Sep 17 00:00:00 2001 From: Ancuta Morarasu Date: Wed, 11 May 2016 11:48:00 +0000 Subject: [PATCH] Merged HEAD (5.2) to 5.2.N (5.2.1) 126512 jkaabimofrad: Merged FILE-FOLDER-API (5.2.0) to HEAD (5.2) 122825 jvonka: (Quick) Shared Links API - add missing file, oops. RA-830 git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/DEV/5.2.N/root@126856 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- .../QuickShareLinkRenditionsRelation.java | 65 +++++++++++++++++++ 1 file changed, 65 insertions(+) create mode 100644 source/java/org/alfresco/rest/api/quicksharelinks/QuickShareLinkRenditionsRelation.java diff --git a/source/java/org/alfresco/rest/api/quicksharelinks/QuickShareLinkRenditionsRelation.java b/source/java/org/alfresco/rest/api/quicksharelinks/QuickShareLinkRenditionsRelation.java new file mode 100644 index 0000000000..64ca1172a4 --- /dev/null +++ b/source/java/org/alfresco/rest/api/quicksharelinks/QuickShareLinkRenditionsRelation.java @@ -0,0 +1,65 @@ +/* + * Copyright (C) 2005-2016 Alfresco Software Limited. + * + * This file is part of Alfresco + * + * Alfresco is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * Alfresco is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with Alfresco. If not, see . + */ +package org.alfresco.rest.api.quicksharelinks; + +import org.alfresco.rest.api.QuickShareLinks; +import org.alfresco.rest.api.Renditions; +import org.alfresco.rest.api.nodes.NodesEntityResource; +import org.alfresco.rest.framework.BinaryProperties; +import org.alfresco.rest.framework.WebApiDescription; +import org.alfresco.rest.framework.WebApiNoAuth; +import org.alfresco.rest.framework.resource.RelationshipResource; +import org.alfresco.rest.framework.resource.actions.interfaces.RelationshipResourceBinaryAction; +import org.alfresco.rest.framework.resource.content.BinaryResource; +import org.alfresco.rest.framework.resource.parameters.Parameters; +import org.alfresco.util.ParameterCheck; +import org.springframework.beans.factory.InitializingBean; + +/** + * Enable rendition(s) to be download via Shared Link + * + * @author janv + */ +@RelationshipResource(name = "renditions", entityResource = QuickShareLinkEntityResource.class, title = "Node renditions via shared link") +public class QuickShareLinkRenditionsRelation implements + RelationshipResourceBinaryAction.Read, + InitializingBean +{ + private QuickShareLinks quickShareLinks; + + public void setQuickShareLinks(QuickShareLinks quickShareLinks) + { + this.quickShareLinks = quickShareLinks; + } + + @Override + public void afterPropertiesSet() + { + ParameterCheck.mandatory("quickShareLinks", this.quickShareLinks); + } + + @WebApiDescription(title = "Download shared link rendition", description = "Download rendition for shared link") + @WebApiNoAuth + @BinaryProperties({"content"}) + @Override + public BinaryResource readProperty(String sharedId, String renditionId, Parameters parameters) + { + return quickShareLinks.readProperty(sharedId, renditionId, parameters); + } +}