From 60b6f0b9676ab43cad38ec5f5c396ed4eb7a796e Mon Sep 17 00:00:00 2001
From: Robert Butora <robert.butora@inaf.it>
Date: Sat, 26 Oct 2024 14:57:40 +0200
Subject: [PATCH] bugfix (db-table-rows were not copied to VoTable)

---
 data-discovery/src/main/java/search/DbObstap.java         | 3 +--
 .../java/webapi/formatfilter/FormatResponseFilter.java    | 5 +++--
 .../src/main/java/webapi/formatfilter/VoTableObstap.java  | 2 +-
 .../src/main/java/webapi/formatfilter/XmlSerializer.java  | 8 +++++++-
 docker/deps/siav2.logging.properties                      | 5 +++--
 docker/start-siav2.sh                                     | 5 -----
 6 files changed, 15 insertions(+), 13 deletions(-)

diff --git a/data-discovery/src/main/java/search/DbObstap.java b/data-discovery/src/main/java/search/DbObstap.java
index ca9e40a..ef7e7af 100644
--- a/data-discovery/src/main/java/search/DbObstap.java
+++ b/data-discovery/src/main/java/search/DbObstap.java
@@ -143,8 +143,7 @@ public class DbObstap
 
       List<String> pubdidList = new ArrayList<>();
 
-      LOGGER.fine("Connecting to: " + dbConnArgs.uri()
-            + " with optional user/pwd: " + dbConnArgs.userName() +" / "+ dbConnArgs.password() );
+      LOGGER.fine("Connecting to: " + dbConnArgs.uri() + " with user: " + dbConnArgs.userName() );
 
       try( 
             Connection conn = DriverManager.getConnection(dbConnArgs.uri(), dbConnArgs.userName(), dbConnArgs.password());
diff --git a/data-discovery/src/main/java/webapi/formatfilter/FormatResponseFilter.java b/data-discovery/src/main/java/webapi/formatfilter/FormatResponseFilter.java
index ec6b89a..3c22a03 100644
--- a/data-discovery/src/main/java/webapi/formatfilter/FormatResponseFilter.java
+++ b/data-discovery/src/main/java/webapi/formatfilter/FormatResponseFilter.java
@@ -32,6 +32,7 @@ public class FormatResponseFilter implements Filter
    public void init(FilterConfig filterConfig) throws ServletException
    {
       LOGGER.config("Default charset: " + Charset.defaultCharset());
+      LOGGER.config("cutout_url: " + settings.serviceUrls.cutoutUrl());
    }
 
    public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)
@@ -65,6 +66,7 @@ public class FormatResponseFilter implements Filter
             Band band = Band.parseBand(params, DEFAULT_SPEC_SYSTEM);
 
             DbObstap.Obstap[] obstapArr = queryObstap(responseWrapper.getDbConnArgs(), pubdidArr, pos, band);
+            LOGGER.info("collected metadata for " + obstapArr.length + " datasets");
 
             String respFormat;
             String respFormatReq[] = params.get("RESPONSEFORMAT");
@@ -153,8 +155,7 @@ public class FormatResponseFilter implements Filter
    private DbObstap.Obstap[] queryObstap(DbConnArgs dbConnArgs, String[] pubdidArr, Pos pos, Band band)
          throws Exception
       {
-
-         LOGGER.fine("trace");
+         LOGGER.fine("trace " + dbConnArgs.toString());
 
          DbObstap dbObstap;
          synchronized(DbObstap.class)
diff --git a/data-discovery/src/main/java/webapi/formatfilter/VoTableObstap.java b/data-discovery/src/main/java/webapi/formatfilter/VoTableObstap.java
index 2c8ef14..2637902 100644
--- a/data-discovery/src/main/java/webapi/formatfilter/VoTableObstap.java
+++ b/data-discovery/src/main/java/webapi/formatfilter/VoTableObstap.java
@@ -159,7 +159,7 @@ class VoTableObstap
 
    public static Object[] obstapVlkbRow( DbObstap.Obstap obstap )
    {
-      return concat(obstapRow(obstap),vlkbRow(obstap));
+      return concat( obstapRow(obstap), vlkbRow(obstap) );
    }
 
 
diff --git a/data-discovery/src/main/java/webapi/formatfilter/XmlSerializer.java b/data-discovery/src/main/java/webapi/formatfilter/XmlSerializer.java
index 1a5a22f..e8d5460 100644
--- a/data-discovery/src/main/java/webapi/formatfilter/XmlSerializer.java
+++ b/data-discovery/src/main/java/webapi/formatfilter/XmlSerializer.java
@@ -26,7 +26,13 @@ final class XmlSerializer
          String cutoutUrl,
          boolean showDuration, long startTime_msec) throws IOException
    {
-      StarTable dstable = new RowListStarTable( VoTableObstap.OBSTAP_VLKB_COLINFO );
+      RowListStarTable dstable = new RowListStarTable( VoTableObstap.OBSTAP_VLKB_COLINFO );
+
+      for(DbObstap.Obstap obstap : obstapArr)
+      {
+         dstable.addRow( VoTableObstap.obstapVlkbRow(obstap) );
+      }
+
 
       dstable.setParameter(new DescribedValue(
                new DefaultValueInfo("datacubeCount", Integer.class, "Count of all datacubes from VLKB-search" ),
diff --git a/docker/deps/siav2.logging.properties b/docker/deps/siav2.logging.properties
index 13237d5..2b2c03e 100644
--- a/docker/deps/siav2.logging.properties
+++ b/docker/deps/siav2.logging.properties
@@ -64,6 +64,7 @@ org.apache.catalina.core.ContainerBase.[Catalina].[localhost].handlers = java.ut
 
 
 # vlkb-siav2
-SearchServlet.level = CONFIG
-FormatResponseFilter.level = CONFIG
+SearchServlet.level = FINEST
+FormatResponseFilter.level = FINEST
+DbObstap.level = FINEST
 
diff --git a/docker/start-siav2.sh b/docker/start-siav2.sh
index 876e366..0272ca2 100755
--- a/docker/start-siav2.sh
+++ b/docker/start-siav2.sh
@@ -24,11 +24,6 @@ echo "<Context docBase=\"$WEBAPP_DIR\"/>" > $CATALINA_BASE/conf/Catalina/localho
 
 # configure response format
 {
-   echo "db_uri=$DB_URI"
-   echo "db_schema=$DB_SCHEMA"
-   echo "db_user_name=$DB_USERNAME"
-   echo "db_password=$DB_PASSWORD"
-
    echo "cutout_url=$CUTOUT_SERVICE_URL"
 } > $WEBAPP_DIR/WEB-INF/classes/formatresponsefilter.properties
 
-- 
GitLab