From 2281e2fbab8d0ff65f56414d0bbb1d0cb2a2a9ad Mon Sep 17 00:00:00 2001 From: sachinbhalekar Date: Wed, 15 Nov 2017 18:49:42 -0800 Subject: [PATCH] Changed the condition in if statement (schema.name() == null || !(schema.name().equals(LOGICAL_NAME))) which requires two comparisons in worst case with (!LOGICAL_NAME.equals(schema.name())) which requires single comparison in all cases and avoids null pointer exception. --- .../api/src/main/java/org/apache/kafka/connect/data/Date.java | 4 ++-- .../api/src/main/java/org/apache/kafka/connect/data/Time.java | 4 ++-- .../main/java/org/apache/kafka/connect/data/Timestamp.java | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/connect/api/src/main/java/org/apache/kafka/connect/data/Date.java b/connect/api/src/main/java/org/apache/kafka/connect/data/Date.java index 7a6fb3f2c1bb0..e87188c1c050d 100644 --- a/connect/api/src/main/java/org/apache/kafka/connect/data/Date.java +++ b/connect/api/src/main/java/org/apache/kafka/connect/data/Date.java @@ -55,7 +55,7 @@ public static SchemaBuilder builder() { * @return the encoded value */ public static int fromLogical(Schema schema, java.util.Date value) { - if (schema.name() == null || !(schema.name().equals(LOGICAL_NAME))) + if (!(LOGICAL_NAME.equals(schema.name()))) throw new DataException("Requested conversion of Date object but the schema does not match."); Calendar calendar = Calendar.getInstance(UTC); calendar.setTime(value); @@ -68,7 +68,7 @@ public static int fromLogical(Schema schema, java.util.Date value) { } public static java.util.Date toLogical(Schema schema, int value) { - if (schema.name() == null || !(schema.name().equals(LOGICAL_NAME))) + if (!(LOGICAL_NAME.equals(schema.name()))) throw new DataException("Requested conversion of Date object but the schema does not match."); return new java.util.Date(value * MILLIS_PER_DAY); } diff --git a/connect/api/src/main/java/org/apache/kafka/connect/data/Time.java b/connect/api/src/main/java/org/apache/kafka/connect/data/Time.java index b403ac11ee12c..ad642e41bf7ed 100644 --- a/connect/api/src/main/java/org/apache/kafka/connect/data/Time.java +++ b/connect/api/src/main/java/org/apache/kafka/connect/data/Time.java @@ -55,7 +55,7 @@ public static SchemaBuilder builder() { * @return the encoded value */ public static int fromLogical(Schema schema, java.util.Date value) { - if (schema.name() == null || !(schema.name().equals(LOGICAL_NAME))) + if (!(LOGICAL_NAME.equals(schema.name()))) throw new DataException("Requested conversion of Time object but the schema does not match."); Calendar calendar = Calendar.getInstance(UTC); calendar.setTime(value); @@ -67,7 +67,7 @@ public static int fromLogical(Schema schema, java.util.Date value) { } public static java.util.Date toLogical(Schema schema, int value) { - if (schema.name() == null || !(schema.name().equals(LOGICAL_NAME))) + if (!(LOGICAL_NAME.equals(schema.name()))) throw new DataException("Requested conversion of Date object but the schema does not match."); if (value < 0 || value > MILLIS_PER_DAY) throw new DataException("Time values must use number of milliseconds greater than 0 and less than 86400000"); diff --git a/connect/api/src/main/java/org/apache/kafka/connect/data/Timestamp.java b/connect/api/src/main/java/org/apache/kafka/connect/data/Timestamp.java index 8c426f4db3283..2da61076a5764 100644 --- a/connect/api/src/main/java/org/apache/kafka/connect/data/Timestamp.java +++ b/connect/api/src/main/java/org/apache/kafka/connect/data/Timestamp.java @@ -46,13 +46,13 @@ public static SchemaBuilder builder() { * @return the encoded value */ public static long fromLogical(Schema schema, java.util.Date value) { - if (schema.name() == null || !(schema.name().equals(LOGICAL_NAME))) + if (!(LOGICAL_NAME.equals(schema.name()))) throw new DataException("Requested conversion of Timestamp object but the schema does not match."); return value.getTime(); } public static java.util.Date toLogical(Schema schema, long value) { - if (schema.name() == null || !(schema.name().equals(LOGICAL_NAME))) + if (!(LOGICAL_NAME.equals(schema.name()))) throw new DataException("Requested conversion of Timestamp object but the schema does not match."); return new java.util.Date(value); }