From 11c3a9c06eea48ba9fe74885047a7b07f22b7c18 Mon Sep 17 00:00:00 2001
From: Mirco Nasuti <mirco.nasuti@chuv.ch>
Date: Thu, 26 May 2016 13:53:33 +0200
Subject: [PATCH] optionnal body for exareme computations

---
 .../org/hbp/mip/controllers/MiningApi.java    | 21 +++++++++++--------
 1 file changed, 12 insertions(+), 9 deletions(-)

diff --git a/src/main/java/org/hbp/mip/controllers/MiningApi.java b/src/main/java/org/hbp/mip/controllers/MiningApi.java
index 6a75c5f19..2fc2882d7 100644
--- a/src/main/java/org/hbp/mip/controllers/MiningApi.java
+++ b/src/main/java/org/hbp/mip/controllers/MiningApi.java
@@ -72,7 +72,7 @@ public class MiningApi {
     @RequestMapping(path = "/exareme/query/{algo}", method = RequestMethod.POST)
     public ResponseEntity<String> postExaremeQuery(
             @ApiParam(value = "algo", required = true) @PathVariable("algo") String algo,
-            @RequestBody @ApiParam(value = "Query for the data mining", required = true) String query
+            @RequestBody(required = false) @ApiParam(value = "Query for the data mining") String query
     ) throws Exception {
         try {
 
@@ -134,14 +134,17 @@ public class MiningApi {
 
         if(!httpVerb.equals("GET")) {
             con.setRequestMethod(httpVerb);
-            con.addRequestProperty("Content-Type", "application/json");
-            con.setRequestProperty("Content-Length", Integer.toString(query.length()));
-
-            con.setDoOutput(true);
-            DataOutputStream wr = new DataOutputStream(con.getOutputStream());
-            wr.write(query.getBytes("UTF8"));
-            wr.flush();
-            wr.close();
+            if(query != null && query.length() > 0)
+            {
+                con.addRequestProperty("Content-Type", "application/json");
+                con.setRequestProperty("Content-Length", Integer.toString(query.length()));
+
+                con.setDoOutput(true);
+                DataOutputStream wr = new DataOutputStream(con.getOutputStream());
+                wr.write(query.getBytes("UTF8"));
+                wr.flush();
+                wr.close();
+            }
         }
 
         int respCode = con.getResponseCode();
-- 
GitLab