From ccdf7e8b42a3678dbc839486441c6e83300ba75c Mon Sep 17 00:00:00 2001 From: Troy Biesterfeld Date: Tue, 11 May 2021 12:16:54 -0500 Subject: [PATCH] Issue #1899 - Update after review comments Signed-off-by: Troy Biesterfeld --- .../java/com/ibm/fhir/schema/app/Main.java | 26 ++++++++++++------- .../java/com/ibm/fhir/schema/patch/Main.java | 22 +++++++++++++++- 2 files changed, 37 insertions(+), 11 deletions(-) diff --git a/fhir-persistence-schema/src/main/java/com/ibm/fhir/schema/app/Main.java b/fhir-persistence-schema/src/main/java/com/ibm/fhir/schema/app/Main.java index 7b4b7a370ad..4f618bf90c2 100644 --- a/fhir-persistence-schema/src/main/java/com/ibm/fhir/schema/app/Main.java +++ b/fhir-persistence-schema/src/main/java/com/ibm/fhir/schema/app/Main.java @@ -1534,12 +1534,14 @@ protected void parseArgs(String[] args) { public void loadPropertyFile(String filename) { try (InputStream is = new FileInputStream(filename)) { properties.load(is); - // Trim leading and trailing whitespace from property values + // Trim leading and trailing whitespace from property values (except password) for (Entry entry : properties.entrySet()) { - String trimmedValue = entry.getValue().toString().trim(); - if (!trimmedValue.equals(entry.getValue().toString())) { - logger.warning("Whitespace trimmed from value of property '" + entry.getKey() + "'"); - entry.setValue(trimmedValue); + if (!"password".equals(entry.getKey())) { + String trimmedValue = entry.getValue().toString().trim(); + if (!trimmedValue.equals(entry.getValue().toString())) { + logger.warning("Whitespace trimmed from value of property '" + entry.getKey() + "'"); + entry.setValue(trimmedValue); + } } } } catch (IOException x) { @@ -1555,12 +1557,16 @@ public void loadPropertyFile(String filename) { public void addProperty(String pair) { String[] kv = pair.split("="); if (kv.length == 2) { - // Trim leading and trailing whitespace from property value - String trimmedValue = kv[1].trim(); - if (!trimmedValue.equals(kv[1])) { - logger.warning("Whitespace trimmed from value of property '" + kv[0] + "'"); + // Trim leading and trailing whitespace from property value (except password) + if (!"password".equals(kv[0])) { + String trimmedValue = kv[1].trim(); + if (!trimmedValue.equals(kv[1])) { + logger.warning("Whitespace trimmed from value of property '" + kv[0] + "'"); + } + properties.put(kv[0], trimmedValue); + } else { + properties.put(kv[0], kv[1]); } - properties.put(kv[0], trimmedValue); } else { throw new IllegalArgumentException("Property must be defined as key=value, not: " + pair); } diff --git a/fhir-persistence-schema/src/main/java/com/ibm/fhir/schema/patch/Main.java b/fhir-persistence-schema/src/main/java/com/ibm/fhir/schema/patch/Main.java index 0745e3a93ac..46122f12478 100644 --- a/fhir-persistence-schema/src/main/java/com/ibm/fhir/schema/patch/Main.java +++ b/fhir-persistence-schema/src/main/java/com/ibm/fhir/schema/patch/Main.java @@ -22,6 +22,7 @@ import java.util.Arrays; import java.util.HashSet; import java.util.List; +import java.util.Map.Entry; import java.util.Properties; import java.util.Set; import java.util.logging.Level; @@ -237,6 +238,16 @@ protected void parseArgs(String[] args) { public void loadPropertyFile(String filename) { try (InputStream is = new FileInputStream(filename)) { properties.load(is); + // Trim leading and trailing whitespace from property values (except password) + for (Entry entry : properties.entrySet()) { + if (!"password".equals(entry.getKey())) { + String trimmedValue = entry.getValue().toString().trim(); + if (!trimmedValue.equals(entry.getValue().toString())) { + logger.warning("Whitespace trimmed from value of property '" + entry.getKey() + "'"); + entry.setValue(trimmedValue); + } + } + } } catch (IOException x) { throw new IllegalArgumentException(x); } @@ -250,7 +261,16 @@ public void loadPropertyFile(String filename) { public void addProperty(String pair) { String[] kv = pair.split("="); if (kv.length == 2) { - properties.put(kv[0], kv[1]); + // Trim leading and trailing whitespace from property value (except password) + if (!"password".equals(kv[0])) { + String trimmedValue = kv[1].trim(); + if (!trimmedValue.equals(kv[1])) { + logger.warning("Whitespace trimmed from value of property '" + kv[0] + "'"); + } + properties.put(kv[0], trimmedValue); + } else { + properties.put(kv[0], kv[1]); + } } else { throw new IllegalArgumentException("Property must be defined as key=value, not: " + pair); }