From 8ed792b99ec9dece1399a43d80b79c9c02caca67 Mon Sep 17 00:00:00 2001
From: Robert Butora <robert.butora@inaf.it>
Date: Tue, 30 Apr 2024 16:02:59 +0200
Subject: [PATCH] fixes json-encoder inconsistency in mergefiles (use Pos Band
 Time Pol and remove 'parameters' level from json-msg )

---
 .../src/main/java/cutout/DatasetsImpl.java    | 29 +++++++++++++------
 .../java/cutout/json/JsonEncoderMerge.java    |  7 ++---
 2 files changed, 22 insertions(+), 14 deletions(-)

diff --git a/data-access/servlet/src/main/java/cutout/DatasetsImpl.java b/data-access/servlet/src/main/java/cutout/DatasetsImpl.java
index 45de1df..d37a7f7 100644
--- a/data-access/servlet/src/main/java/cutout/DatasetsImpl.java
+++ b/data-access/servlet/src/main/java/cutout/DatasetsImpl.java
@@ -154,20 +154,31 @@ class DatasetsImpl implements Datasets
          String publisherDid, Coord coord,
          boolean countNullValues)
    {
-     // ResolverByObsCore rsl = new ResolverByObsCore(settings.dbConn, subsurveys);
+      // ResolverByObsCore rsl = new ResolverByObsCore(settings.dbConn, subsurveys);
       Resolver rsl = new ResolverFromId();//settings.dbConn, subsurveys);
       rsl.resolve(publisherDid);
 
-      FitsCard[] extraCards = null;//Subsurvey.subsurveysFindCards(subsurveys, rsl.obsCollection());//rsl.subsurveyId);
-      String absSubimgPathname = settings.fitsPaths.cutouts() + "/" + generateSubimgPathname(rsl.relPathname(), rsl.hdunum());
+      FitsCard[] extraCards = null;
+      //Subsurvey.subsurveysFindCards(subsurveys, rsl.obsCollection());//rsl.subsurveyId);
+      String absSubimgPathname = settings.fitsPaths.cutouts() + "/"
+         + generateSubimgPathname(rsl.relPathname(), rsl.hdunum());
       LOGGER.info("absSubimgPathname: " + absSubimgPathname);
 
-      String inJson = JsonEncoderMerge.subimgToJson(
-            rsl.relPathname(), rsl.hdunum(),
-            coord,
-            absSubimgPathname,
-            extraCards,
-            countNullValues);
+      LOGGER.info("Using AMQP");
+
+      JsonEncoder jReq = new JsonEncoder();
+      jReq.add(rsl.relPathname(), rsl.hdunum());
+      jReq.add(coord.pos);
+      jReq.add(coord.band);
+      jReq.add(coord.time);
+      jReq.add(coord.pol);
+
+      // jReq.add(pixels), FIXME implement to supoort PIXLES in vlkb-legacy by AMQP
+
+      jReq.add(countNullValues);
+      jReq.add(extraCards);
+
+      String inJson = jReq.toString();
 
       return JsonDecoder.responseFromCutoutJson( doRpc(inJson) );
    }
diff --git a/data-access/servlet/src/main/java/cutout/json/JsonEncoderMerge.java b/data-access/servlet/src/main/java/cutout/json/JsonEncoderMerge.java
index a06d88d..0e12394 100644
--- a/data-access/servlet/src/main/java/cutout/json/JsonEncoderMerge.java
+++ b/data-access/servlet/src/main/java/cutout/json/JsonEncoderMerge.java
@@ -178,18 +178,15 @@ public class JsonEncoderMerge
          String dimensionality, 
          String[] filestomerge )
    {
-      JSONObject objParameters = new JSONObject();
-      objParameters.put("dimensionality", dimensionality);
-
       JSONArray fnames = new JSONArray();
       for(String fn : filestomerge){
          fnames.add(fn);
       }
-      objParameters.put("files_to_merge", fnames);
 
       JSONObject obj = new JSONObject();
       obj.put("service",  "MERGEF");
-      obj.put("parameters",  objParameters);
+      obj.put("dimensionality", dimensionality);
+      obj.put("files_to_merge", fnames);
 
       return obj.toJSONString();
    }
-- 
GitLab