From 402cd80744937c6483c0fd9f35ce6196c225e068 Mon Sep 17 00:00:00 2001 From: Robert Butora <robert.butora@gmail.com> Date: Sat, 30 Mar 2024 07:13:00 -0400 Subject: [PATCH] config: adss DB-config to Format-filter (Search-servlet ahs its own config entry) and Db-search module is inited by Search-config or Format-config --- data-discovery/config/Makefile | 7 +++++-- ...ies => formatresponsefilter.properties.in} | 0 .../src/main/java/vlkb/search/DbPSearch.java | 10 ++++++++-- .../src/main/java/vlkb/webapi/DBConn.java | 19 +++++++++++++++++++ .../vlkb/webapi/FormatResponseFilter.java | 3 ++- .../vlkb/webapi/FormatResponseSettings.java | 6 +++--- .../main/java/vlkb/webapi/SearchServlet.java | 2 +- .../main/java/vlkb/webapi/SearchSettings.java | 8 ++++---- .../resources/formatresponsefilter.properties | 2 +- 9 files changed, 43 insertions(+), 14 deletions(-) rename data-discovery/config/{formatresponsefilter.properties => formatresponsefilter.properties.in} (100%) create mode 100644 data-discovery/src/main/java/vlkb/webapi/DBConn.java diff --git a/data-discovery/config/Makefile b/data-discovery/config/Makefile index e03b2d6..5b4fd7c 100644 --- a/data-discovery/config/Makefile +++ b/data-discovery/config/Makefile @@ -3,7 +3,7 @@ DBMS ?= localhost # localhost | pasquale | pasquale-devel AUTH ?= # ia2token | garrtoken | <empty> ################################################################ -all: authpolicy.properties web.xml discovery.properties +all: formatresponsefilter.properties authpolicy.properties web.xml discovery.properties web.xml: cd web-xml && cat web.xml-begining web.xml-format-filter web.xml-$(AUTH)-filter web.xml-authorization-filter web.xml-servlets web.xml-ending > ../web.xml @@ -11,9 +11,12 @@ web.xml: discovery.properties: discovery.properties.in cat dbms.conf-$(DBMS) discovery.properties.in > $@ +formatresponsefilter.properties: formatresponsefilter.properties.in + cat dbms.conf-$(DBMS) formatresponsefilter.properties.in > $@ + authpolicy.properties: dbms.conf-$(DBMS) cp dbms.conf-$(DBMS) $@ .PHONY: clean: - -rm -f authpolicy.properties discovery.properties web.xml + -rm -f formatresponsefilter.properties authpolicy.properties discovery.properties web.xml diff --git a/data-discovery/config/formatresponsefilter.properties b/data-discovery/config/formatresponsefilter.properties.in similarity index 100% rename from data-discovery/config/formatresponsefilter.properties rename to data-discovery/config/formatresponsefilter.properties.in diff --git a/data-discovery/src/main/java/vlkb/search/DbPSearch.java b/data-discovery/src/main/java/vlkb/search/DbPSearch.java index a65895a..ea62bcf 100644 --- a/data-discovery/src/main/java/vlkb/search/DbPSearch.java +++ b/data-discovery/src/main/java/vlkb/search/DbPSearch.java @@ -23,9 +23,15 @@ import java.lang.ClassNotFoundException; public class DbPSearch { private static final Logger LOGGER = Logger.getLogger(DbPSearch.class.getName()); - private static final SearchSettings.DBConn dbConn = SearchSettings.getInstance("discovery.properties").dbConn; + //private static final SearchSettings.DBConn dbConn = SearchSettings.getInstance("discovery.properties").dbConn; + private DBConn dbConn; - private static final String DB_DRIVER = "org.postgresql.Driver"; + //private static final String DB_DRIVER = "org.postgresql.Driver"; + + DbPSearch(DBConn dbConn) + { + this.dbConn = dbConn; + } public String[] queryOverlapingPubdid(Coord coord, SubsurveyId subsurveyId) { diff --git a/data-discovery/src/main/java/vlkb/webapi/DBConn.java b/data-discovery/src/main/java/vlkb/webapi/DBConn.java new file mode 100644 index 0000000..85dc9cd --- /dev/null +++ b/data-discovery/src/main/java/vlkb/webapi/DBConn.java @@ -0,0 +1,19 @@ + +class DBConn +{ + public String uri; + public String schema; + public String user_name; + public String password; + + public String uri() {return uri;} + public String schema() {return schema;} + public String userName() {return user_name;} + public String password() {return password;} + + public String toString() + { + return uri + " schema[" + schema + "] " + user_name + " / " + password; + } +} + diff --git a/data-discovery/src/main/java/vlkb/webapi/FormatResponseFilter.java b/data-discovery/src/main/java/vlkb/webapi/FormatResponseFilter.java index f6b7775..832593f 100644 --- a/data-discovery/src/main/java/vlkb/webapi/FormatResponseFilter.java +++ b/data-discovery/src/main/java/vlkb/webapi/FormatResponseFilter.java @@ -73,6 +73,7 @@ public class FormatResponseFilter implements Filter dbSubsurveyArr = Subsurvey.loadSubsurveys(surveysAbsPathname); LOGGER.info("Surveys: loaded metadata for " + dbSubsurveyArr.length + " known surveys"); LOGGER.info("Default charset: " + Charset.defaultCharset()); + LOGGER.info("DB: " + settings.dbConn.toString()); } @@ -224,7 +225,7 @@ public class FormatResponseFilter implements Filter DbPSearch dbps; synchronized(DbPSearch.class) { - dbps = new DbPSearch(); + dbps = new DbPSearch(settings.dbConn); } return dbps.queryOutputData(pubdidArr, coord); diff --git a/data-discovery/src/main/java/vlkb/webapi/FormatResponseSettings.java b/data-discovery/src/main/java/vlkb/webapi/FormatResponseSettings.java index b2979bd..dcebe2a 100644 --- a/data-discovery/src/main/java/vlkb/webapi/FormatResponseSettings.java +++ b/data-discovery/src/main/java/vlkb/webapi/FormatResponseSettings.java @@ -11,7 +11,7 @@ class FormatResponseSettings { private static final Logger LOGGER = Logger.getLogger("FormatResponseSettings"); - +/* public static class DBConn { private String uri; @@ -29,7 +29,7 @@ class FormatResponseSettings return uri + " schema[" + schema + "] " + user_name + " / " + password; } } - +*/ public static class ServiceUrls { @@ -101,7 +101,7 @@ class FormatResponseSettings private static DBConn loadDBConn(Properties properties) { - DBConn dbConn = new FormatResponseSettings.DBConn(); + DBConn dbConn = new DBConn(); dbConn.uri = properties.getProperty("db_uri","jdbc:postgresql://localhost:5432/vialactea").strip(); dbConn.schema = properties.getProperty("db_schema","datasets").strip(); dbConn.user_name = properties.getProperty("db_user_name","").strip(); diff --git a/data-discovery/src/main/java/vlkb/webapi/SearchServlet.java b/data-discovery/src/main/java/vlkb/webapi/SearchServlet.java index 7e04336..be6da0c 100644 --- a/data-discovery/src/main/java/vlkb/webapi/SearchServlet.java +++ b/data-discovery/src/main/java/vlkb/webapi/SearchServlet.java @@ -64,7 +64,7 @@ public class SearchServlet extends javax.servlet.http.HttpServlet DbPSearch dbps; synchronized(DbPSearch.class) { - dbps = new DbPSearch(); + dbps = new DbPSearch(settings.dbConn); } String[] pubdidArr = dbps.queryOverlapingPubdid(coord, subsurveyId); diff --git a/data-discovery/src/main/java/vlkb/webapi/SearchSettings.java b/data-discovery/src/main/java/vlkb/webapi/SearchSettings.java index 8e85f24..0a08c5e 100644 --- a/data-discovery/src/main/java/vlkb/webapi/SearchSettings.java +++ b/data-discovery/src/main/java/vlkb/webapi/SearchSettings.java @@ -11,7 +11,7 @@ class SearchSettings { private static final Logger LOGGER = Logger.getLogger("SearchSettings"); - +/* public static class DBConn { private String uri; @@ -29,7 +29,7 @@ class SearchSettings return uri + " schema[" + schema + "] " + user_name + " / " + password; } } - +*/ public DBConn dbConn; @@ -47,7 +47,7 @@ class SearchSettings DBConn dbConn = loadDBConn(properties); - return new SearchSettings(dbConn/*, serviceUrls*/); + return new SearchSettings(dbConn); } else { @@ -72,7 +72,7 @@ class SearchSettings private static DBConn loadDBConn(Properties properties) { - DBConn dbConn = new SearchSettings.DBConn(); + DBConn dbConn = new DBConn(); dbConn.uri = properties.getProperty("db_uri","jdbc:postgresql://localhost:5432/vialactea").strip(); dbConn.schema = properties.getProperty("db_schema","datasets").strip(); dbConn.user_name = properties.getProperty("db_user_name","").strip(); diff --git a/data-discovery/src/main/resources/formatresponsefilter.properties b/data-discovery/src/main/resources/formatresponsefilter.properties index a2fd398..997168d 100644 --- a/data-discovery/src/main/resources/formatresponsefilter.properties +++ b/data-discovery/src/main/resources/formatresponsefilter.properties @@ -6,7 +6,7 @@ db_user_name= db_password= # VLKB-legacy: surveys metadata in csv file -surveys_abs_pathname= +surveys_metadata_abs_pathname= # these URL's are used in response.xml so client can access those services cutout_url= -- GitLab