From 924122b3d9d131bd9025c112f53fd1246c492ce8 Mon Sep 17 00:00:00 2001 From: Denis Ungureanu Date: Thu, 11 Jun 2020 15:49:46 +0300 Subject: [PATCH] ACS-304 : ACS Repository: support for content direct access urls (#1042) - add expiry parameter --- pom.xml | 2 +- .../java/org/alfresco/repo/content/ContentServiceImpl.java | 4 ++-- .../org/alfresco/service/cmr/repository/ContentService.java | 6 ++++-- .../org/alfresco/repo/version/ContentServiceImplTest.java | 2 +- 4 files changed, 8 insertions(+), 6 deletions(-) diff --git a/pom.xml b/pom.xml index 768dbe82f0..0e9bedeb35 100644 --- a/pom.xml +++ b/pom.xml @@ -36,7 +36,7 @@ 11 - 8.118 + 8.119 8.35 6.2 diff --git a/src/main/java/org/alfresco/repo/content/ContentServiceImpl.java b/src/main/java/org/alfresco/repo/content/ContentServiceImpl.java index df24111e37..eec43d8f3b 100644 --- a/src/main/java/org/alfresco/repo/content/ContentServiceImpl.java +++ b/src/main/java/org/alfresco/repo/content/ContentServiceImpl.java @@ -503,11 +503,11 @@ public class ContentServiceImpl extends ContentTransformServiceAdaptor implement } @Override - public String getDirectAccessUrl(String contentUrl) + public String getDirectAccessUrl(String contentUrl, int expiryTime) { if (store.isDirectAccessSupported()) { - return store.getDirectAccessUrl(contentUrl); + return store.getDirectAccessUrl(contentUrl, expiryTime); } return ""; } diff --git a/src/main/java/org/alfresco/service/cmr/repository/ContentService.java b/src/main/java/org/alfresco/service/cmr/repository/ContentService.java index 75c19ea461..3edd8c8772 100644 --- a/src/main/java/org/alfresco/service/cmr/repository/ContentService.java +++ b/src/main/java/org/alfresco/service/cmr/repository/ContentService.java @@ -154,10 +154,12 @@ public interface ContentService extends ContentTransformService public ContentWriter getTempWriter(); /** - * Gets a presigned URL to directly access a binary content. + * Gets a presigned URL to directly access a binary content. It is up to the content store + * if it can fulfil this request with an expiry time or not. * * @param contentUrl A content store URL + * @param expiryTime Expiration time in milliseconds * @return A direct access URL for a binary content or empty string if not supported */ - public String getDirectAccessUrl(String contentUrl); + public String getDirectAccessUrl(String contentUrl, int expiryTime); } diff --git a/src/test/java/org/alfresco/repo/version/ContentServiceImplTest.java b/src/test/java/org/alfresco/repo/version/ContentServiceImplTest.java index cb9dc08e34..4b97b26117 100644 --- a/src/test/java/org/alfresco/repo/version/ContentServiceImplTest.java +++ b/src/test/java/org/alfresco/repo/version/ContentServiceImplTest.java @@ -189,7 +189,7 @@ public class ContentServiceImplTest extends BaseVersionStoreTest @Test public void testWhenGetDirectAccessUrlIsNotSupported() { - assertEquals("", contentService.getDirectAccessUrl("s3v2://1234421")); + assertEquals("", contentService.getDirectAccessUrl("s3v2://1234421", 10)); assertFalse(contentStore.isDirectAccessSupported()); }