You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by or...@apache.org on 2023/03/30 08:00:46 UTC

[camel] 02/02: (chores) camel-cassandra: prevent a few potential NPEs

This is an automated email from the ASF dual-hosted git repository.

orpiske pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel.git

commit 1dd31f044599f2ff2d2d99b807185ddab19a1444
Author: Otavio Rodolfo Piske <an...@gmail.com>
AuthorDate: Wed Mar 29 10:24:05 2023 +0200

    (chores) camel-cassandra: prevent a few potential NPEs
---
 .../camel/utils/cassandra/CassandraUtils.java       | 21 ++++++++++++++-------
 1 file changed, 14 insertions(+), 7 deletions(-)

diff --git a/components/camel-cassandraql/src/main/java/org/apache/camel/utils/cassandra/CassandraUtils.java b/components/camel-cassandraql/src/main/java/org/apache/camel/utils/cassandra/CassandraUtils.java
index 6bf6aedc0cd..953a65427f0 100644
--- a/components/camel-cassandraql/src/main/java/org/apache/camel/utils/cassandra/CassandraUtils.java
+++ b/components/camel-cassandraql/src/main/java/org/apache/camel/utils/cassandra/CassandraUtils.java
@@ -103,20 +103,27 @@ public final class CassandraUtils {
      */
     public static Insert generateInsert(String table, String[] columns, boolean ifNotExists, Integer ttl) {
         InsertInto into = insertInto(table);
-        RegularInsert regularInsert = null;
+        final RegularInsert regularInsert = createRegularInsert(columns, into);
+
         Insert insert = null;
-        for (String column : columns) {
-            regularInsert = (regularInsert != null ? regularInsert : into).value(column, bindMarker());
-        }
-        if (ifNotExists) {
+        if (ifNotExists && regularInsert != null) {
             insert = regularInsert.ifNotExists();
         }
-        if (ttl != null) {
+        if (ttl != null && insert != null) {
             insert = (insert != null ? insert : regularInsert).usingTtl(ttl);
         }
         return insert != null ? insert : regularInsert;
     }
 
+    private static RegularInsert createRegularInsert(String[] columns, InsertInto into) {
+        RegularInsert regularInsert = null;
+
+        for (String column : columns) {
+            regularInsert = (regularInsert != null ? regularInsert : into).value(column, bindMarker());
+        }
+        return regularInsert;
+    }
+
     /**
      * Generate select where columns = ? CQL.
      */
@@ -170,7 +177,7 @@ public final class CassandraUtils {
                                                + "To delete all records, use Truncate");
         }
 
-        if (ifExists) {
+        if (ifExists && delete != null) {
             delete = delete.ifExists();
         }
         return delete;