1717import com .cloudinary .strategies .AbstractApiStrategy ;
1818import com .cloudinary .utils .ObjectUtils ;
1919
20- @ SuppressWarnings ({ "rawtypes" , "unchecked" })
20+ @ SuppressWarnings ({"rawtypes" , "unchecked" })
2121public class Api {
22- public enum HttpMethod { GET , POST , PUT , DELETE }
23-
22+ public enum HttpMethod {GET , POST , PUT , DELETE }
23+
2424 public final static Map <Integer , Class <? extends Exception >> CLOUDINARY_API_ERROR_CLASSES = new HashMap <Integer , Class <? extends Exception >>();
25+
2526 static {
2627 CLOUDINARY_API_ERROR_CLASSES .put (400 , BadRequest .class );
2728 CLOUDINARY_API_ERROR_CLASSES .put (401 , AuthorizationRequired .class );
@@ -32,14 +33,14 @@ public enum HttpMethod { GET, POST, PUT, DELETE }
3233 CLOUDINARY_API_ERROR_CLASSES .put (500 , GeneralError .class );
3334 }
3435
35- public final Cloudinary cloudinary ;
36- private AbstractApiStrategy strategy ;
37-
36+ public final Cloudinary cloudinary ;
37+ private AbstractApiStrategy strategy ;
38+
3839 protected ApiResponse callApi (HttpMethod method , Iterable <String > uri , Map <String , ? extends Object > params , Map options ) throws Exception {
39- return this .strategy .callApi (method ,uri ,params ,options );
40+ return this .strategy .callApi (method , uri , params , options );
4041 }
41-
42- public Api (Cloudinary cloudinary ,AbstractApiStrategy strategy ) {
42+
43+ public Api (Cloudinary cloudinary , AbstractApiStrategy strategy ) {
4344 this .cloudinary = cloudinary ;
4445 this .strategy = strategy ;
4546 this .strategy .init (this );
@@ -71,13 +72,13 @@ public ApiResponse resources(Map options) throws Exception {
7172 uri .add (type );
7273 return callApi (HttpMethod .GET , uri , ObjectUtils .only (options , "next_cursor" , "direction" , "max_results" , "prefix" , "tags" , "context" , "moderations" , "start_at" ), options );
7374 }
74-
75+
7576 public ApiResponse resourcesByTag (String tag , Map options ) throws Exception {
7677 if (options == null ) options = ObjectUtils .emptyMap ();
7778 String resourceType = ObjectUtils .asString (options .get ("resource_type" ), "image" );
7879 return callApi (HttpMethod .GET , Arrays .asList ("resources" , resourceType , "tags" , tag ), ObjectUtils .only (options , "next_cursor" , "direction" , "max_results" , "tags" , "context" , "moderations" ), options );
7980 }
80-
81+
8182 public ApiResponse resourcesByIds (Iterable <String > publicIds , Map options ) throws Exception {
8283 if (options == null ) options = ObjectUtils .emptyMap ();
8384 String resourceType = ObjectUtils .asString (options .get ("resource_type" ), "image" );
@@ -86,7 +87,7 @@ public ApiResponse resourcesByIds(Iterable<String> publicIds, Map options) throw
8687 params .put ("public_ids" , publicIds );
8788 return callApi (HttpMethod .GET , Arrays .asList ("resources" , resourceType , type ), params , options );
8889 }
89-
90+
9091 public ApiResponse resourcesByModeration (String kind , String status , Map options ) throws Exception {
9192 if (options == null ) options = ObjectUtils .emptyMap ();
9293 String resourceType = ObjectUtils .asString (options .get ("resource_type" ), "image" );
@@ -98,26 +99,26 @@ public ApiResponse resource(String public_id, Map options) throws Exception {
9899 String resourceType = ObjectUtils .asString (options .get ("resource_type" ), "image" );
99100 String type = ObjectUtils .asString (options .get ("type" ), "upload" );
100101 return callApi (HttpMethod .GET , Arrays .asList ("resources" , resourceType , type , public_id ),
101- ObjectUtils .only (options , "exif" , "colors" , "faces" , "coordinates" ,
102- "image_metadata" , "pages" , "phash" , "max_results" ), options );
102+ ObjectUtils .only (options , "exif" , "colors" , "faces" , "coordinates" ,
103+ "image_metadata" , "pages" , "phash" , "max_results" ), options );
103104 }
104-
105+
105106 public ApiResponse update (String public_id , Map options ) throws Exception {
106107 if (options == null ) options = ObjectUtils .emptyMap ();
107108 String resourceType = ObjectUtils .asString (options .get ("resource_type" ), "image" );
108109 String type = ObjectUtils .asString (options .get ("type" ), "upload" );
109110 Map params = new HashMap <String , Object >();
110111 Util .processWriteParameters (options , params );
111112 params .put ("moderation_status" , options .get ("moderation_status" ));
112- return callApi (HttpMethod .POST , Arrays .asList ("resources" , resourceType , type , public_id ),
113- params , options );
113+ return callApi (HttpMethod .POST , Arrays .asList ("resources" , resourceType , type , public_id ),
114+ params , options );
114115 }
115116
116117 public ApiResponse deleteResources (Iterable <String > publicIds , Map options ) throws Exception {
117118 if (options == null ) options = ObjectUtils .emptyMap ();
118119 String resourceType = ObjectUtils .asString (options .get ("resource_type" ), "image" );
119120 String type = ObjectUtils .asString (options .get ("type" ), "upload" );
120- Map params = ObjectUtils .only (options , "keep_original" ,"invalidate" , "next_cursor" );
121+ Map params = ObjectUtils .only (options , "keep_original" , "invalidate" , "next_cursor" );
121122 params .put ("public_ids" , publicIds );
122123 return callApi (HttpMethod .DELETE , Arrays .asList ("resources" , resourceType , type ), params , options );
123124 }
@@ -126,22 +127,22 @@ public ApiResponse deleteResourcesByPrefix(String prefix, Map options) throws Ex
126127 if (options == null ) options = ObjectUtils .emptyMap ();
127128 String resourceType = ObjectUtils .asString (options .get ("resource_type" ), "image" );
128129 String type = ObjectUtils .asString (options .get ("type" ), "upload" );
129- Map params = ObjectUtils .only (options , "keep_original" ,"invalidate" , "next_cursor" );
130+ Map params = ObjectUtils .only (options , "keep_original" , "invalidate" , "next_cursor" );
130131 params .put ("prefix" , prefix );
131132 return callApi (HttpMethod .DELETE , Arrays .asList ("resources" , resourceType , type ), params , options );
132133 }
133134
134135 public ApiResponse deleteResourcesByTag (String tag , Map options ) throws Exception {
135136 if (options == null ) options = ObjectUtils .emptyMap ();
136137 String resourceType = ObjectUtils .asString (options .get ("resource_type" ), "image" );
137- return callApi (HttpMethod .DELETE , Arrays .asList ("resources" , resourceType , "tags" , tag ), ObjectUtils .only (options , "keep_original" ,"invalidate" , "next_cursor" ), options );
138+ return callApi (HttpMethod .DELETE , Arrays .asList ("resources" , resourceType , "tags" , tag ), ObjectUtils .only (options , "keep_original" , "invalidate" , "next_cursor" ), options );
138139 }
139-
140+
140141 public ApiResponse deleteAllResources (Map options ) throws Exception {
141142 if (options == null ) options = ObjectUtils .emptyMap ();
142143 String resourceType = ObjectUtils .asString (options .get ("resource_type" ), "image" );
143144 String type = ObjectUtils .asString (options .get ("type" ), "upload" );
144- Map filtered = ObjectUtils .only (options , "keep_original" ,"invalidate" , "next_cursor" );
145+ Map filtered = ObjectUtils .only (options , "keep_original" , "invalidate" , "next_cursor" );
145146 filtered .put ("all" , true );
146147 return callApi (HttpMethod .DELETE , Arrays .asList ("resources" , resourceType , type ), filtered , options );
147148 }
@@ -183,7 +184,7 @@ public ApiResponse updateTransformation(String transformation, Map updates, Map
183184 public ApiResponse createTransformation (String name , String definition , Map options ) throws Exception {
184185 return callApi (HttpMethod .POST , Arrays .asList ("transformations" , name ), ObjectUtils .asMap ("transformation" , definition ), options );
185186 }
186-
187+
187188 public ApiResponse uploadPresets (Map options ) throws Exception {
188189 if (options == null ) options = ObjectUtils .emptyMap ();
189190 return callApi (HttpMethod .GET , Arrays .asList ("upload_presets" ), ObjectUtils .only (options , "next_cursor" , "max_results" ), options );
@@ -208,70 +209,70 @@ public ApiResponse updateUploadPreset(String name, Map options) throws Exception
208209 }
209210
210211 public ApiResponse createUploadPreset (Map options ) throws Exception {
211- if (options == null ) options = ObjectUtils .emptyMap ();
212+ if (options == null ) options = ObjectUtils .emptyMap ();
212213 Map params = Util .buildUploadParams (options );
213214 Util .clearEmpty (params );
214215 params .putAll (ObjectUtils .only (options , "name" , "unsigned" , "disallow_public_id" ));
215- return callApi (HttpMethod .POST , Arrays .asList ("upload_presets" ), params , options );
216- }
217-
218- public ApiResponse rootFolders (Map options ) throws Exception {
219- if (options == null )
220- options = ObjectUtils .emptyMap ();
221- return callApi (HttpMethod .GET , Arrays .asList ("folders" ), ObjectUtils .emptyMap (), options );
222- }
223-
224- public ApiResponse subFolders (String ofFolderPath , Map options ) throws Exception {
225- if (options == null )
226- options = ObjectUtils .emptyMap ();
227- return callApi (HttpMethod .GET , Arrays .asList ("folders" , ofFolderPath ), ObjectUtils .emptyMap (), options );
228- }
229-
230- public ApiResponse restore (Iterable <String > publicIds , Map options ) throws Exception {
231- if (options == null )
232- options = ObjectUtils .emptyMap ();
233- String resourceType = ObjectUtils .asString (options .get ("resource_type" ), "image" );
234- String type = ObjectUtils .asString (options .get ("type" ), "upload" );
235- Map params = new HashMap <String , Object >();
236- params .put ("public_ids" , publicIds );
237- return callApi (HttpMethod .POST , Arrays .asList ("resources" , resourceType , type , "restore" ), params , options );
238- }
239-
240- public ApiResponse uploadMappings (Map options ) throws Exception {
241- if (options == null )
242- options = ObjectUtils .emptyMap ();
243- return callApi (HttpMethod .GET , Arrays .asList ("upload_mappings" ),
244- ObjectUtils .only (options , "next_cursor" , "max_results" ), options );
245- }
246-
247- public ApiResponse uploadMapping (String name , Map options ) throws Exception {
248- if (options == null )
249- options = ObjectUtils .emptyMap ();
250- return callApi (HttpMethod .GET , Arrays .asList ("upload_mappings" ), ObjectUtils .asMap ("folder" , name ), options );
251- }
252-
253- public ApiResponse deleteUploadMapping (String name , Map options ) throws Exception {
254- if (options == null )
255- options = ObjectUtils .emptyMap ();
256- return callApi (HttpMethod .DELETE , Arrays .asList ("upload_mappings" ), ObjectUtils .asMap ("folder" , name ), options );
257- }
258-
259- public ApiResponse updateUploadMapping (String name , Map options ) throws Exception {
260- if (options == null )
261- options = ObjectUtils .emptyMap ();
262- Map params = new HashMap <String , Object >();
263- params .put ("folder" , name );
264- params .putAll (ObjectUtils .only (options , "template" ));
265- return callApi (HttpMethod .PUT , Arrays .asList ("upload_mappings" ), params , options );
266- }
267-
268- public ApiResponse createUploadMapping (String name , Map options ) throws Exception {
269- if (options == null )
270- options = ObjectUtils .emptyMap ();
271- Map params = new HashMap <String , Object >();
272- params .put ("folder" , name );
273- params .putAll (ObjectUtils .only (options , "template" ));
274- return callApi (HttpMethod .POST , Arrays .asList ("upload_mappings" ), params , options );
275- }
276-
216+ return callApi (HttpMethod .POST , Arrays .asList ("upload_presets" ), params , options );
217+ }
218+
219+ public ApiResponse rootFolders (Map options ) throws Exception {
220+ if (options == null )
221+ options = ObjectUtils .emptyMap ();
222+ return callApi (HttpMethod .GET , Arrays .asList ("folders" ), ObjectUtils .emptyMap (), options );
223+ }
224+
225+ public ApiResponse subFolders (String ofFolderPath , Map options ) throws Exception {
226+ if (options == null )
227+ options = ObjectUtils .emptyMap ();
228+ return callApi (HttpMethod .GET , Arrays .asList ("folders" , ofFolderPath ), ObjectUtils .emptyMap (), options );
229+ }
230+
231+ public ApiResponse restore (Iterable <String > publicIds , Map options ) throws Exception {
232+ if (options == null )
233+ options = ObjectUtils .emptyMap ();
234+ String resourceType = ObjectUtils .asString (options .get ("resource_type" ), "image" );
235+ String type = ObjectUtils .asString (options .get ("type" ), "upload" );
236+ Map params = new HashMap <String , Object >();
237+ params .put ("public_ids" , publicIds );
238+ return callApi (HttpMethod .POST , Arrays .asList ("resources" , resourceType , type , "restore" ), params , options );
239+ }
240+
241+ public ApiResponse uploadMappings (Map options ) throws Exception {
242+ if (options == null )
243+ options = ObjectUtils .emptyMap ();
244+ return callApi (HttpMethod .GET , Arrays .asList ("upload_mappings" ),
245+ ObjectUtils .only (options , "next_cursor" , "max_results" ), options );
246+ }
247+
248+ public ApiResponse uploadMapping (String name , Map options ) throws Exception {
249+ if (options == null )
250+ options = ObjectUtils .emptyMap ();
251+ return callApi (HttpMethod .GET , Arrays .asList ("upload_mappings" ), ObjectUtils .asMap ("folder" , name ), options );
252+ }
253+
254+ public ApiResponse deleteUploadMapping (String name , Map options ) throws Exception {
255+ if (options == null )
256+ options = ObjectUtils .emptyMap ();
257+ return callApi (HttpMethod .DELETE , Arrays .asList ("upload_mappings" ), ObjectUtils .asMap ("folder" , name ), options );
258+ }
259+
260+ public ApiResponse updateUploadMapping (String name , Map options ) throws Exception {
261+ if (options == null )
262+ options = ObjectUtils .emptyMap ();
263+ Map params = new HashMap <String , Object >();
264+ params .put ("folder" , name );
265+ params .putAll (ObjectUtils .only (options , "template" ));
266+ return callApi (HttpMethod .PUT , Arrays .asList ("upload_mappings" ), params , options );
267+ }
268+
269+ public ApiResponse createUploadMapping (String name , Map options ) throws Exception {
270+ if (options == null )
271+ options = ObjectUtils .emptyMap ();
272+ Map params = new HashMap <String , Object >();
273+ params .put ("folder" , name );
274+ params .putAll (ObjectUtils .only (options , "template" ));
275+ return callApi (HttpMethod .POST , Arrays .asList ("upload_mappings" ), params , options );
276+ }
277+
277278}
0 commit comments