]> git.basschouten.com Git - openhab-addons.git/commitdiff
Fixed parameter ordering while storing values (#12467)
authorChristoph Weitkamp <github@christophweitkamp.de>
Sun, 13 Mar 2022 11:13:00 +0000 (12:13 +0100)
committerGitHub <noreply@github.com>
Sun, 13 Mar 2022 11:13:00 +0000 (12:13 +0100)
Signed-off-by: Christoph Weitkamp <github@christophweitkamp.de>
bundles/org.openhab.persistence.jdbc/src/main/java/org/openhab/persistence/jdbc/db/JdbcBaseDAO.java
bundles/org.openhab.persistence.jdbc/src/main/java/org/openhab/persistence/jdbc/utils/StringUtilsExt.java

index 1ce2bdf93506ad75824423dd5c1c19038484bf0d..1efc052d8cb71e12619d34a65c045592ff227c1a 100644 (file)
@@ -343,7 +343,7 @@ public class JdbcBaseDAO {
         String sql = StringUtilsExt.replaceArrayMerge(sqlInsertItemValue,
                 new String[] { "#tableName#", "#tablePrimaryValue#" }, new String[] { storedVO.getTableName(), "?" });
         java.sql.Timestamp timestamp = new java.sql.Timestamp(date.toInstant().toEpochMilli());
-        Object[] params = new Object[] { storedVO.getValue(), timestamp, storedVO.getValue() };
+        Object[] params = new Object[] { timestamp, storedVO.getValue(), storedVO.getValue() };
         logger.debug("JDBC::doStoreItemValue sql={} timestamp={} value='{}'", sql, timestamp, storedVO.getValue());
         Yank.execute(sql, params);
     }
index b2b2300c806c0e5c4fee9ee71ca9ab34cbfd7de6..05b761e58e5d43f7cbc3f868ebc37621f3c8fb49 100644 (file)
@@ -42,20 +42,22 @@ public class StringUtilsExt {
      * @return
      */
     public static final String replaceArrayMerge(String str, String separate, Object[] separators) {
+        String s = str;
         for (int i = 0; i < separators.length; i++) {
-            str = str.replaceFirst(separate, (String) separators[i]);
+            s = s.replaceFirst(separate, (String) separators[i]);
         }
-        return str;
+        return s;
     }
 
     /**
      * @see #replaceArrayMerge(String str, String separate, Object[] separators)
      */
     public static final String replaceArrayMerge(String str, String[] separate, String[] separators) {
+        String s = str;
         for (int i = 0; i < separators.length; i++) {
-            str = str.replaceFirst(separate[i], separators[i]);
+            s = s.replaceFirst(separate[i], separators[i]);
         }
-        return str;
+        return s;
     }
 
     /**