From 0e8feef8ba43e8de735f4af0681bb106d8427fac Mon Sep 17 00:00:00 2001 From: Aditi Madan Date: Tue, 23 Jul 2019 16:46:41 -0700 Subject: [PATCH 1/3] Allow generating archive with multiple resource types --- .../src/main/java/com/cloudinary/ArchiveParams.java | 13 +++++++++++++ .../src/main/java/com/cloudinary/Util.java | 1 + .../com/cloudinary/test/AbstractUploaderTest.java | 10 ++++++++++ .../main/java/com/cloudinary/test/MockableTest.java | 2 ++ 4 files changed, 26 insertions(+) diff --git a/cloudinary-core/src/main/java/com/cloudinary/ArchiveParams.java b/cloudinary-core/src/main/java/com/cloudinary/ArchiveParams.java index 3b998a88..892b73d1 100644 --- a/cloudinary-core/src/main/java/com/cloudinary/ArchiveParams.java +++ b/cloudinary-core/src/main/java/com/cloudinary/ArchiveParams.java @@ -26,6 +26,7 @@ public class ArchiveParams { private String[] targetTags = null; private String[] tags = null; private String[] publicIds = null; + private String[] fullyQualifiedPublicIds = null; private String[] prefixes = null; private Transformation[] transformations = null; private Long expiresAt = null; @@ -176,6 +177,15 @@ public ArchiveParams publicIds(String[] publicIds) { return this; } + public String[] fully_qualified_public_ids() { + return fullyQualifiedPublicIds; + } + + public ArchiveParams fully_qualified_public_ids(String[] fullyQualifiedPublicIds) { + this.fullyQualifiedPublicIds = fullyQualifiedPublicIds; + return this; + } + public String[] prefixes() { return prefixes; } @@ -225,6 +235,9 @@ public Map toMap() { params.put("tags", tags); if (publicIds != null) params.put("public_ids", publicIds); + if(fullyQualifiedPublicIds !=null){ + params.put("fully_qualified_public_ids", fullyQualifiedPublicIds); + } if (prefixes != null) params.put("prefixes", prefixes); if (transformations != null) { diff --git a/cloudinary-core/src/main/java/com/cloudinary/Util.java b/cloudinary-core/src/main/java/com/cloudinary/Util.java index 63f03d94..af2b7613 100644 --- a/cloudinary-core/src/main/java/com/cloudinary/Util.java +++ b/cloudinary-core/src/main/java/com/cloudinary/Util.java @@ -177,6 +177,7 @@ public static final Map buildArchiveParams(Map options, String t putArray("target_tags", options, params); putArray("tags", options, params); putArray("public_ids", options, params); + putArray("fully_qualified_public_ids", options, params); putArray("prefixes", options, params); putEager("transformations", options, params); putObject("timestamp", options, params, Util.timestamp()); diff --git a/cloudinary-test-common/src/main/java/com/cloudinary/test/AbstractUploaderTest.java b/cloudinary-test-common/src/main/java/com/cloudinary/test/AbstractUploaderTest.java index c213778e..9c4f6075 100644 --- a/cloudinary-test-common/src/main/java/com/cloudinary/test/AbstractUploaderTest.java +++ b/cloudinary-test-common/src/main/java/com/cloudinary/test/AbstractUploaderTest.java @@ -29,6 +29,8 @@ abstract public class AbstractUploaderTest extends MockableTest { public static final int SRC_TEST_IMAGE_W = 241; public static final int SRC_TEST_IMAGE_H = 51; private static Map> toDelete = new HashMap>(); + public static final String SRC_FULLY_QUALIFIED_IMAGE="image/upload/sample"; + public static final String SRC_FULLY_QUALIFIED_VIDEO="video/upload/dog"; @BeforeClass public static void setUpClass() throws IOException { @@ -38,6 +40,7 @@ public static void setUpClass() throws IOException { } cloudinary.uploader().upload(SRC_TEST_IMAGE, asMap("tags", new String[]{SDK_TEST_TAG, UPLOADER_TAG, ARCHIVE_TAG})); + cloudinary.uploader().upload(SRC_TEST_VIDEO, asMap("tags", new String[]{SDK_TEST_TAG, UPLOADER_TAG, ARCHIVE_TAG}, "public_id", "dog", "resource_type", "video")); cloudinary.uploader().upload(SRC_TEST_IMAGE, asMap("tags", new String[]{SDK_TEST_TAG, UPLOADER_TAG, ARCHIVE_TAG}, "resource_type", "raw")); cloudinary.uploader().upload(SRC_TEST_IMAGE, asMap("tags", new String[]{SDK_TEST_TAG, UPLOADER_TAG, ARCHIVE_TAG}, @@ -591,6 +594,13 @@ public void testCreateArchiveRaw() throws Exception { } + @Test + public void testCreateZipMultipleResourceTypes() throws Exception { + Map result = cloudinary.uploader().createZip(ObjectUtils.asMap("fully_qualified_public_ids",(new String[]{SRC_FULLY_QUALIFIED_IMAGE,SRC_FULLY_QUALIFIED_VIDEO}))); + assertEquals(2, result.get("file_count")); + cloudinary.api().deleteResources(Arrays.asList(result.get("public_id").toString()), asMap("resource_type", "raw")); + } + @Test public void testDownloadArchive() throws Exception { String result = cloudinary.downloadArchive(new ArchiveParams().tags(new String[]{ARCHIVE_TAG}).targetTags(new String[]{UPLOADER_TAG})); diff --git a/cloudinary-test-common/src/main/java/com/cloudinary/test/MockableTest.java b/cloudinary-test-common/src/main/java/com/cloudinary/test/MockableTest.java index 13bc82ef..18043d3e 100644 --- a/cloudinary-test-common/src/main/java/com/cloudinary/test/MockableTest.java +++ b/cloudinary-test-common/src/main/java/com/cloudinary/test/MockableTest.java @@ -11,6 +11,8 @@ public class MockableTest { public static final String SRC_TEST_IMAGE = "../cloudinary-test-common/src/main/resources/old_logo.png"; + public static final String SRC_TEST_VIDEO = "http://res.cloudinary.com/demo/video/upload/dog.mp4"; + public static final String SRC_TEST_RAW = "../cloudinary-test-common/src/main/resources/docx.docx"; public static final String REMOTE_TEST_IMAGE = "http://cloudinary.com/images/old_logo.png"; protected static String SUFFIX = StringUtils.isNotBlank(System.getenv("TRAVIS_JOB_ID")) ? System.getenv("TRAVIS_JOB_ID") : String.valueOf(new Random().nextInt(99999)); protected static final String SDK_TEST_TAG = "cloudinary_java_test_" + SUFFIX; From e5034ef89131424762a735806fed28dda2a85ee5 Mon Sep 17 00:00:00 2001 From: Aditi Madan Date: Tue, 20 Aug 2019 15:05:33 -0700 Subject: [PATCH 2/3] Allow generating archive with multiple resource types --- .../src/main/java/com/cloudinary/test/AbstractUploaderTest.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cloudinary-test-common/src/main/java/com/cloudinary/test/AbstractUploaderTest.java b/cloudinary-test-common/src/main/java/com/cloudinary/test/AbstractUploaderTest.java index 9c4f6075..5eb76989 100644 --- a/cloudinary-test-common/src/main/java/com/cloudinary/test/AbstractUploaderTest.java +++ b/cloudinary-test-common/src/main/java/com/cloudinary/test/AbstractUploaderTest.java @@ -596,7 +596,7 @@ public void testCreateArchiveRaw() throws Exception { @Test public void testCreateZipMultipleResourceTypes() throws Exception { - Map result = cloudinary.uploader().createZip(ObjectUtils.asMap("fully_qualified_public_ids",(new String[]{SRC_FULLY_QUALIFIED_IMAGE,SRC_FULLY_QUALIFIED_VIDEO}))); + Map result = cloudinary.uploader().createZip(ObjectUtils.asMap("fully_qualified_public_ids",(new String[]{SRC_FULLY_QUALIFIED_IMAGE,SRC_FULLY_QUALIFIED_VIDEO}),"resource_type","auto")); assertEquals(2, result.get("file_count")); cloudinary.api().deleteResources(Arrays.asList(result.get("public_id").toString()), asMap("resource_type", "raw")); } From 1bac622f5a9831c87456a85ff876a0f5ecda7baf Mon Sep 17 00:00:00 2001 From: Aditi Madan Date: Wed, 25 Sep 2019 14:47:37 -0700 Subject: [PATCH 3/3] Changed function name --- cloudinary-core/src/main/java/com/cloudinary/ArchiveParams.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cloudinary-core/src/main/java/com/cloudinary/ArchiveParams.java b/cloudinary-core/src/main/java/com/cloudinary/ArchiveParams.java index 892b73d1..8c094f36 100644 --- a/cloudinary-core/src/main/java/com/cloudinary/ArchiveParams.java +++ b/cloudinary-core/src/main/java/com/cloudinary/ArchiveParams.java @@ -181,7 +181,7 @@ public String[] fully_qualified_public_ids() { return fullyQualifiedPublicIds; } - public ArchiveParams fully_qualified_public_ids(String[] fullyQualifiedPublicIds) { + public ArchiveParams fullyQualifiedPublicIds(String[] fullyQualifiedPublicIds) { this.fullyQualifiedPublicIds = fullyQualifiedPublicIds; return this; }