From b5206455e362f047a728131160f4d471edfe6f4a Mon Sep 17 00:00:00 2001 From: francistagbo Date: Wed, 21 Oct 2020 17:10:32 +0800 Subject: [PATCH] Fix named transformation with spaces --- .../src/main/java/com/cloudinary/Transformation.java | 5 ++++- .../src/test/java/com/cloudinary/test/CloudinaryTest.java | 8 ++++++++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/cloudinary-core/src/main/java/com/cloudinary/Transformation.java b/cloudinary-core/src/main/java/com/cloudinary/Transformation.java index 78330c2f..f1efd89c 100644 --- a/cloudinary-core/src/main/java/com/cloudinary/Transformation.java +++ b/cloudinary-core/src/main/java/com/cloudinary/Transformation.java @@ -675,10 +675,13 @@ public String generate(Map options) { List transformations = ObjectUtils.asArray(options.get("transformation")); boolean allNamed = true; - for (Object baseTransformation : transformations) { + for ( int i =0; i < transformations.size(); i++ ){ + Object baseTransformation = transformations.get(i); if (baseTransformation instanceof Map) { allNamed = false; break; + } else if (baseTransformation instanceof String){ + transformations.set(i, ((String) baseTransformation).replaceAll(" ", "%20")); } } String namedTransformation = null; diff --git a/cloudinary-core/src/test/java/com/cloudinary/test/CloudinaryTest.java b/cloudinary-core/src/test/java/com/cloudinary/test/CloudinaryTest.java index 9c4e508c..8f46508e 100644 --- a/cloudinary-core/src/test/java/com/cloudinary/test/CloudinaryTest.java +++ b/cloudinary-core/src/test/java/com/cloudinary/test/CloudinaryTest.java @@ -388,6 +388,14 @@ public void testTransformationArray() { assertEquals(DEFAULT_UPLOAD_PATH + "t_blip.blop/test", result); } + @Test + public void testNamedTransformationWithSpaces() { + // should support named transformations with spaces + Transformation transformation = new Transformation().named("blip blop"); + String result = cloudinary.url().transformation(transformation).generate("test"); + assertEquals(DEFAULT_UPLOAD_PATH + "t_blip%20blop/test", result); + } + @Test public void testBaseTransformations() { // should support base transformation