Skip to content

Commit 9409278

Browse files
authored
Upload APIs rename call should return metadata and context
1 parent bec0c3b commit 9409278

File tree

4 files changed

+53
-7
lines changed

4 files changed

+53
-7
lines changed

cloudinary-core/src/main/java/com/cloudinary/Uploader.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -247,6 +247,8 @@ public Map rename(String fromPublicId, String toPublicId, Map options) throws IO
247247
params.put("to_public_id", toPublicId);
248248
params.put("invalidate", ObjectUtils.asBoolean(options.get("invalidate"), false).toString());
249249
params.put("to_type", options.get("to_type"));
250+
params.put("context", ObjectUtils.asBoolean(options.get("context"), false).toString());
251+
params.put("metadata", ObjectUtils.asBoolean(options.get("metadata"), false).toString());
250252
return callApi("rename", params, options, null);
251253
}
252254

cloudinary-test-common/src/main/java/com/cloudinary/test/AbstractStructuredMetadataTest.java

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -302,17 +302,12 @@ private SetMetadataField createSetField(String labelPrefix) {
302302
}
303303

304304
private StringMetadataField newFieldInstance(String labelPrefix) throws Exception {
305-
StringMetadataField field = new StringMetadataField();
306305
String label = labelPrefix + "_" + SUFFIX;
307-
field.setLabel(label);
308-
field.setMandatory(true);
309-
field.setValidation(new MetadataValidation.StringLength(3, 9));
310-
field.setDefaultValue("val_test");
311-
return field;
306+
return MetadataTestHelper.newFieldInstance(label);
312307
}
313308

314309
private ApiResponse addFieldToAccount(MetadataField field) throws Exception {
315-
ApiResponse apiResponse = api.addMetadataField(field);
310+
ApiResponse apiResponse = MetadataTestHelper.addFieldToAccount(api, field);
316311
metadataFieldExternalIds.add(apiResponse.get("external_id").toString());
317312
return apiResponse;
318313
}

cloudinary-test-common/src/main/java/com/cloudinary/test/AbstractUploaderTest.java

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -219,6 +219,31 @@ public void testRename() throws Exception {
219219
assertEquals(cloudinary.api().resource(publicId2, ObjectUtils.emptyMap()).get("format"), "ico");
220220
}
221221

222+
@Test
223+
public void testRenameShouldReturnContext() throws Exception {
224+
Map result = cloudinary.uploader().upload(SRC_TEST_IMAGE, asMap("tags", Arrays.asList(SDK_TEST_TAG, UPLOADER_TAG), "context", asMap("foo", "boo")));
225+
226+
String publicId = result.get("public_id").toString();
227+
String publicId2 = "folder/" + publicId + "2";
228+
Map renameResult = cloudinary.uploader().rename(publicId, publicId2, asMap("context", true));
229+
assertNotNull(renameResult.get("context"));
230+
}
231+
232+
@Test
233+
public void testRenameShouldReturnMetadata() throws Exception {
234+
String label = "test" + SUFFIX;
235+
StringMetadataField f = MetadataTestHelper.newFieldInstance(label);
236+
Map fieldResult = MetadataTestHelper.addFieldToAccount(cloudinary.api(), f);
237+
String fieldId = fieldResult.get("external_id").toString();
238+
Map<String, Object> metadata = Collections.<String, Object>singletonMap(fieldId, "123456");
239+
Map result = cloudinary.uploader().upload(SRC_TEST_IMAGE, asMap("tags", Arrays.asList(SDK_TEST_TAG, UPLOADER_TAG), "metadata", metadata));
240+
241+
String publicId = result.get("public_id").toString();
242+
String publicId2 = "folder/" + publicId + "2";
243+
Map renameResult = cloudinary.uploader().rename(publicId, publicId2, asMap("metadata", true));
244+
assertNotNull(renameResult.get("metadata"));
245+
}
246+
222247
@Test
223248
public void testUniqueFilename() throws Exception {
224249
Map result = cloudinary.uploader().upload(SRC_TEST_IMAGE, asMap("use_filename", true, "tags", Arrays.asList(SDK_TEST_TAG, UPLOADER_TAG)));
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
package com.cloudinary.test;
2+
3+
import com.cloudinary.Api;
4+
import com.cloudinary.api.ApiResponse;
5+
import com.cloudinary.metadata.MetadataField;
6+
import com.cloudinary.metadata.MetadataValidation;
7+
import com.cloudinary.metadata.StringMetadataField;
8+
9+
public class MetadataTestHelper {
10+
public static StringMetadataField newFieldInstance(String label) throws Exception {
11+
StringMetadataField field = new StringMetadataField();
12+
field.setLabel(label);
13+
field.setMandatory(true);
14+
field.setValidation(new MetadataValidation.StringLength(3, 9));
15+
field.setDefaultValue("val_test");
16+
return field;
17+
}
18+
19+
public static ApiResponse addFieldToAccount(Api api, MetadataField field) throws Exception {
20+
ApiResponse apiResponse = api.addMetadataField(field);
21+
return apiResponse;
22+
}
23+
}
24+

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy