From 17f0ec65c2bb8e505e26ccc7ace435f8c526be2e Mon Sep 17 00:00:00 2001 From: gmantele <gmantele@ari.uni-heidelberg.de> Date: Tue, 10 Feb 2015 17:56:18 +0100 Subject: [PATCH] [ADQL] Add NULL tests over the ADQL schema and catalog names. --- src/adql/db/SearchColumnList.java | 4 ++-- src/adql/db/SearchTableList.java | 28 +++++++++++++++------------- 2 files changed, 17 insertions(+), 15 deletions(-) diff --git a/src/adql/db/SearchColumnList.java b/src/adql/db/SearchColumnList.java index e385cb7..b3117d6 100644 --- a/src/adql/db/SearchColumnList.java +++ b/src/adql/db/SearchColumnList.java @@ -46,7 +46,7 @@ import cds.utils.TextualSearchList; * </i></p> * * @author Grégory Mantelet (CDS;ARI) - * @version 1.2 (11/2013) + * @version 1.3 (02/2015) */ public class SearchColumnList extends TextualSearchList<DBColumn> { private static final long serialVersionUID = 1L; @@ -284,7 +284,7 @@ public class SearchColumnList extends TextualSearchList<DBColumn> { } // test the schema name: - if (schema != null){ + if (schema != null && matchTable.getADQLSchemaName() != null){ if (IdentifierField.SCHEMA.isCaseSensitive(caseSensitivity)){ if (!matchTable.getADQLSchemaName().equals(schema)) continue; diff --git a/src/adql/db/SearchTableList.java b/src/adql/db/SearchTableList.java index d025be9..7de6ec5 100644 --- a/src/adql/db/SearchTableList.java +++ b/src/adql/db/SearchTableList.java @@ -36,7 +36,7 @@ import cds.utils.TextualSearchList; * </p> * * @author Grégory Mantelet (CDS;ARI) - * @version 1.3 (08/2014) + * @version 1.3 (02/2015) */ public class SearchTableList extends TextualSearchList<DBTable> { private static final long serialVersionUID = 1L; @@ -156,22 +156,24 @@ public class SearchTableList extends TextualSearchList<DBTable> { ArrayList<DBTable> result = new ArrayList<DBTable>(); for(DBTable match : tmpResult){ - if (IdentifierField.SCHEMA.isCaseSensitive(caseSensitivity)){ - if (!match.getADQLSchemaName().equals(schema)) - continue; - }else{ - if (!match.getADQLSchemaName().equalsIgnoreCase(schema)) - continue; - } - - if (catalog != null){ - if (IdentifierField.CATALOG.isCaseSensitive(caseSensitivity)){ - if (!match.getADQLCatalogName().equals(catalog)) + if (match.getADQLSchemaName() != null){ + if (IdentifierField.SCHEMA.isCaseSensitive(caseSensitivity)){ + if (!match.getADQLSchemaName().equals(schema)) continue; }else{ - if (!match.getADQLCatalogName().equalsIgnoreCase(catalog)) + if (!match.getADQLSchemaName().equalsIgnoreCase(schema)) continue; } + + if (catalog != null && match.getADQLCatalogName() != null){ + if (IdentifierField.CATALOG.isCaseSensitive(caseSensitivity)){ + if (!match.getADQLCatalogName().equals(catalog)) + continue; + }else{ + if (!match.getADQLCatalogName().equalsIgnoreCase(catalog)) + continue; + } + } } result.add(match); -- GitLab