You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kafka.apache.org by ij...@apache.org on 2018/09/13 04:21:52 UTC
[kafka] branch trunk updated: KAFKA-6926: Simplified some logic to
eliminate some suppressions of NPath complexity checks (#5051)
This is an automated email from the ASF dual-hosted git repository.
ijuma pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/kafka.git
The following commit(s) were added to refs/heads/trunk by this push:
new f028249 KAFKA-6926: Simplified some logic to eliminate some suppressions of NPath complexity checks (#5051)
f028249 is described below
commit f0282498e7a312a977acb127557520def338d45c
Author: Randall Hauch <rh...@gmail.com>
AuthorDate: Wed Sep 12 23:21:46 2018 -0500
KAFKA-6926: Simplified some logic to eliminate some suppressions of NPath complexity checks (#5051)
Modified several classes' `equals` methods and simplified a complex method to
reduce the NPath complexity so they could be removed from the checkstyle
suppressions that were required with the recent move to Java 8 and upgrade
of Checkstyle: https://github.com/apache/kafka/pull/5046.
Reviewers: Robert Yokota <ra...@gmail.com>, Arjun Satish <ar...@confluent.io>, Ismael Juma <is...@juma.me.uk>
---
checkstyle/suppressions.xml | 2 +-
.../kafka/connect/connector/ConnectRecord.java | 26 +++++++---------------
.../apache/kafka/connect/data/ConnectSchema.java | 15 ++++++++-----
.../kafka/connect/runtime/AbstractStatus.java | 13 ++++++-----
4 files changed, 25 insertions(+), 31 deletions(-)
diff --git a/checkstyle/suppressions.xml b/checkstyle/suppressions.xml
index 2fa499c..5046c76 100644
--- a/checkstyle/suppressions.xml
+++ b/checkstyle/suppressions.xml
@@ -114,7 +114,7 @@
files="Values.java"/>
<suppress checks="NPathComplexity"
- files="(AbstractStatus|ConnectHeaders|ConnectRecord|ConnectSchema|DistributedHerder|FileStreamSourceTask|JsonConverter|KafkaConfigBackingStore).java"/>
+ files="(DistributedHerder|JsonConverter|KafkaConfigBackingStore|FileStreamSourceTask).java"/>
<suppress checks="MethodLength"
files="Values.java"/>
diff --git a/connect/api/src/main/java/org/apache/kafka/connect/connector/ConnectRecord.java b/connect/api/src/main/java/org/apache/kafka/connect/connector/ConnectRecord.java
index 2ad8a04..2c5f514 100644
--- a/connect/api/src/main/java/org/apache/kafka/connect/connector/ConnectRecord.java
+++ b/connect/api/src/main/java/org/apache/kafka/connect/connector/ConnectRecord.java
@@ -155,24 +155,14 @@ public abstract class ConnectRecord<R extends ConnectRecord<R>> {
ConnectRecord that = (ConnectRecord) o;
- if (kafkaPartition != null ? !kafkaPartition.equals(that.kafkaPartition) : that.kafkaPartition != null)
- return false;
- if (topic != null ? !topic.equals(that.topic) : that.topic != null)
- return false;
- if (keySchema != null ? !keySchema.equals(that.keySchema) : that.keySchema != null)
- return false;
- if (key != null ? !key.equals(that.key) : that.key != null)
- return false;
- if (valueSchema != null ? !valueSchema.equals(that.valueSchema) : that.valueSchema != null)
- return false;
- if (value != null ? !value.equals(that.value) : that.value != null)
- return false;
- if (timestamp != null ? !timestamp.equals(that.timestamp) : that.timestamp != null)
- return false;
- if (!Objects.equals(headers, that.headers))
- return false;
-
- return true;
+ return Objects.equals(kafkaPartition, that.kafkaPartition)
+ && Objects.equals(topic, that.topic)
+ && Objects.equals(keySchema, that.keySchema)
+ && Objects.equals(key, that.key)
+ && Objects.equals(valueSchema, that.valueSchema)
+ && Objects.equals(value, that.value)
+ && Objects.equals(timestamp, that.timestamp)
+ && Objects.equals(headers, that.headers);
}
@Override
diff --git a/connect/api/src/main/java/org/apache/kafka/connect/data/ConnectSchema.java b/connect/api/src/main/java/org/apache/kafka/connect/data/ConnectSchema.java
index f1a05bb..66630d1 100644
--- a/connect/api/src/main/java/org/apache/kafka/connect/data/ConnectSchema.java
+++ b/connect/api/src/main/java/org/apache/kafka/connect/data/ConnectSchema.java
@@ -218,14 +218,10 @@ public class ConnectSchema implements Schema {
if (!schema.isOptional())
throw new DataException("Invalid value: null used for required field: \"" + name
+ "\", schema type: " + schema.type());
- else
- return;
+ return;
}
- List<Class> expectedClasses = LOGICAL_TYPE_CLASSES.get(schema.name());
-
- if (expectedClasses == null)
- expectedClasses = SCHEMA_TYPE_CLASSES.get(schema.type());
+ List<Class> expectedClasses = expectedClassesFor(schema);
if (expectedClasses == null)
throw new DataException("Invalid Java object for schema type " + schema.type()
@@ -266,6 +262,13 @@ public class ConnectSchema implements Schema {
}
}
+ private static List<Class> expectedClassesFor(Schema schema) {
+ List<Class> expectedClasses = LOGICAL_TYPE_CLASSES.get(schema.name());
+ if (expectedClasses == null)
+ expectedClasses = SCHEMA_TYPE_CLASSES.get(schema.type());
+ return expectedClasses;
+ }
+
/**
* Validate that the value can be used for this schema, i.e. that its type matches the schema type and optional
* requirements. Throws a DataException if the value is invalid.
diff --git a/connect/runtime/src/main/java/org/apache/kafka/connect/runtime/AbstractStatus.java b/connect/runtime/src/main/java/org/apache/kafka/connect/runtime/AbstractStatus.java
index 00a050a..dd1b94a 100644
--- a/connect/runtime/src/main/java/org/apache/kafka/connect/runtime/AbstractStatus.java
+++ b/connect/runtime/src/main/java/org/apache/kafka/connect/runtime/AbstractStatus.java
@@ -16,6 +16,8 @@
*/
package org.apache.kafka.connect.runtime;
+import java.util.Objects;
+
public abstract class AbstractStatus<T> {
public enum State {
@@ -81,12 +83,11 @@ public abstract class AbstractStatus<T> {
AbstractStatus<?> that = (AbstractStatus<?>) o;
- if (generation != that.generation) return false;
- if (id != null ? !id.equals(that.id) : that.id != null) return false;
- if (state != that.state) return false;
- if (trace != null ? !trace.equals(that.trace) : that.trace != null) return false;
- return workerId != null ? workerId.equals(that.workerId) : that.workerId == null;
-
+ return generation == that.generation
+ && Objects.equals(id, that.id)
+ && state == that.state
+ && Objects.equals(trace, that.trace)
+ && Objects.equals(workerId, that.workerId);
}
@Override