Ban use of Enum.equals; use == instead

Project: http://git-wip-us.apache.org/repos/asf/calcite/repo
Commit: http://git-wip-us.apache.org/repos/asf/calcite/commit/f11f89f7
Tree: http://git-wip-us.apache.org/repos/asf/calcite/tree/f11f89f7
Diff: http://git-wip-us.apache.org/repos/asf/calcite/diff/f11f89f7

Branch: refs/heads/master
Commit: f11f89f705ed8ea58c8081da60049fe49981a2ea
Parents: a473eca
Author: Julian Hyde <[email protected]>
Authored: Wed Jul 26 21:37:56 2017 -0700
Committer: Julian Hyde <[email protected]>
Committed: Thu Jul 27 16:03:47 2017 -0700

----------------------------------------------------------------------
 .../org/apache/calcite/adapter/cassandra/CassandraSort.java  | 8 ++++++--
 core/src/main/java/org/apache/calcite/prepare/Prepare.java   | 4 ++--
 .../java/org/apache/calcite/rel/rel2sql/SqlImplementor.java  | 2 +-
 .../org/apache/calcite/sql/fun/SqlLiteralChainOperator.java  | 2 +-
 .../main/java/org/apache/calcite/sql/type/SqlTypeUtil.java   | 4 ++--
 .../apache/calcite/adapter/druid/DruidConnectionImpl.java    | 2 +-
 .../java/org/apache/calcite/adapter/druid/DruidQuery.java    | 3 ++-
 .../java/org/apache/calcite/adapter/druid/DruidRules.java    | 2 +-
 .../apache/calcite/adapter/splunk/SplunkPushDownRule.java    | 2 +-
 src/main/config/forbidden-apis/signatures.txt                | 3 +++
 10 files changed, 20 insertions(+), 12 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/calcite/blob/f11f89f7/cassandra/src/main/java/org/apache/calcite/adapter/cassandra/CassandraSort.java
----------------------------------------------------------------------
diff --git 
a/cassandra/src/main/java/org/apache/calcite/adapter/cassandra/CassandraSort.java
 
b/cassandra/src/main/java/org/apache/calcite/adapter/cassandra/CassandraSort.java
index 8487815..7baff99 100644
--- 
a/cassandra/src/main/java/org/apache/calcite/adapter/cassandra/CassandraSort.java
+++ 
b/cassandra/src/main/java/org/apache/calcite/adapter/cassandra/CassandraSort.java
@@ -70,9 +70,13 @@ public class CassandraSort extends Sort implements 
CassandraRel {
       for (RelFieldCollation fieldCollation : sortCollations) {
         final String name =
             fields.get(fieldCollation.getFieldIndex()).getName();
-        String direction = "ASC";
-        if 
(fieldCollation.getDirection().equals(RelFieldCollation.Direction.DESCENDING)) {
+        final String direction;
+        switch (fieldCollation.getDirection()) {
+        case DESCENDING:
           direction = "DESC";
+          break;
+        default:
+          direction = "ASC";
         }
         fieldOrder.add(name + " " + direction);
       }

http://git-wip-us.apache.org/repos/asf/calcite/blob/f11f89f7/core/src/main/java/org/apache/calcite/prepare/Prepare.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/calcite/prepare/Prepare.java 
b/core/src/main/java/org/apache/calcite/prepare/Prepare.java
index cc6a81b..29af1ef 100644
--- a/core/src/main/java/org/apache/calcite/prepare/Prepare.java
+++ b/core/src/main/java/org/apache/calcite/prepare/Prepare.java
@@ -437,9 +437,9 @@ public abstract class Prepare {
         final InitializerExpressionFactory initializerExpressionFactory =
             ((Wrapper) table).unwrap(InitializerExpressionFactory.class);
         if (initializerExpressionFactory != null) {
-          return !initializerExpressionFactory
+          return initializerExpressionFactory
               .newColumnDefaultValue(this, ordinal, initializerContext)
-              .getType().getSqlTypeName().equals(SqlTypeName.NULL);
+              .getType().getSqlTypeName() != SqlTypeName.NULL;
         }
       }
       if (ordinal >= rowType.getFieldList().size()) {

http://git-wip-us.apache.org/repos/asf/calcite/blob/f11f89f7/core/src/main/java/org/apache/calcite/rel/rel2sql/SqlImplementor.java
----------------------------------------------------------------------
diff --git 
a/core/src/main/java/org/apache/calcite/rel/rel2sql/SqlImplementor.java 
b/core/src/main/java/org/apache/calcite/rel/rel2sql/SqlImplementor.java
index 5ff48a2..8b227c7 100644
--- a/core/src/main/java/org/apache/calcite/rel/rel2sql/SqlImplementor.java
+++ b/core/src/main/java/org/apache/calcite/rel/rel2sql/SqlImplementor.java
@@ -958,7 +958,7 @@ public abstract class SqlImplementor {
       Set<Clause> nonWrapSet = ImmutableSet.of(Clause.SELECT);
       for (Clause clause : clauses) {
         if (maxClause.ordinal() > clause.ordinal()
-            || (maxClause.equals(clause) && !nonWrapSet.contains(clause))) {
+            || (maxClause == clause && !nonWrapSet.contains(clause))) {
           needNew = true;
         }
       }

http://git-wip-us.apache.org/repos/asf/calcite/blob/f11f89f7/core/src/main/java/org/apache/calcite/sql/fun/SqlLiteralChainOperator.java
----------------------------------------------------------------------
diff --git 
a/core/src/main/java/org/apache/calcite/sql/fun/SqlLiteralChainOperator.java 
b/core/src/main/java/org/apache/calcite/sql/fun/SqlLiteralChainOperator.java
index 80d2bc3..19f2da3 100644
--- a/core/src/main/java/org/apache/calcite/sql/fun/SqlLiteralChainOperator.java
+++ b/core/src/main/java/org/apache/calcite/sql/fun/SqlLiteralChainOperator.java
@@ -124,7 +124,7 @@ public class SqlLiteralChainOperator extends 
SqlSpecialOperator {
     int size = 0;
     for (RelDataType type : opBinding.collectOperandTypes()) {
       size += type.getPrecision();
-      assert type.getSqlTypeName().equals(typeName);
+      assert type.getSqlTypeName() == typeName;
     }
     return opBinding.getTypeFactory().createSqlType(typeName, size);
   }

http://git-wip-us.apache.org/repos/asf/calcite/blob/f11f89f7/core/src/main/java/org/apache/calcite/sql/type/SqlTypeUtil.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/calcite/sql/type/SqlTypeUtil.java 
b/core/src/main/java/org/apache/calcite/sql/type/SqlTypeUtil.java
index 0bdcea4..4c27f8a 100644
--- a/core/src/main/java/org/apache/calcite/sql/type/SqlTypeUtil.java
+++ b/core/src/main/java/org/apache/calcite/sql/type/SqlTypeUtil.java
@@ -257,8 +257,8 @@ public abstract class SqlTypeUtil {
   public static boolean isOfSameTypeName(
       SqlTypeName typeName,
       RelDataType type) {
-    return SqlTypeName.ANY.equals(typeName)
-        || typeName.equals(type.getSqlTypeName());
+    return SqlTypeName.ANY == typeName
+        || typeName == type.getSqlTypeName();
   }
 
   /**

http://git-wip-us.apache.org/repos/asf/calcite/blob/f11f89f7/druid/src/main/java/org/apache/calcite/adapter/druid/DruidConnectionImpl.java
----------------------------------------------------------------------
diff --git 
a/druid/src/main/java/org/apache/calcite/adapter/druid/DruidConnectionImpl.java 
b/druid/src/main/java/org/apache/calcite/adapter/druid/DruidConnectionImpl.java
index 191ec47..2ae2516 100644
--- 
a/druid/src/main/java/org/apache/calcite/adapter/druid/DruidConnectionImpl.java
+++ 
b/druid/src/main/java/org/apache/calcite/adapter/druid/DruidConnectionImpl.java
@@ -283,7 +283,7 @@ class DruidConnectionImpl implements DruidConnection {
       type = fieldTypes.get(i);
     }
 
-    if (isTimestampColumn || 
ColumnMetaData.Rep.JAVA_SQL_TIMESTAMP.equals(type)) {
+    if (isTimestampColumn || ColumnMetaData.Rep.JAVA_SQL_TIMESTAMP == type) {
       try {
         final Date parse;
         // synchronized block to avoid race condition

http://git-wip-us.apache.org/repos/asf/calcite/blob/f11f89f7/druid/src/main/java/org/apache/calcite/adapter/druid/DruidQuery.java
----------------------------------------------------------------------
diff --git 
a/druid/src/main/java/org/apache/calcite/adapter/druid/DruidQuery.java 
b/druid/src/main/java/org/apache/calcite/adapter/druid/DruidQuery.java
index 8f9a032..a2a405a 100644
--- a/druid/src/main/java/org/apache/calcite/adapter/druid/DruidQuery.java
+++ b/druid/src/main/java/org/apache/calcite/adapter/druid/DruidQuery.java
@@ -922,7 +922,8 @@ public class DruidQuery extends AbstractRelNode implements 
BindableRel {
       Integer indexSkipGroup = ((RexInputRef) rexNode).getIndex()
           - ((Aggregate) rel).getGroupCount();
       AggregateCall aggCall = ((Aggregate) 
rel).getAggCallList().get(indexSkipGroup);
-      if (aggCall.isDistinct() && 
aggCall.getAggregation().getKind().equals(SqlKind.COUNT)) {
+      if (aggCall.isDistinct()
+          && aggCall.getAggregation().getKind() == SqlKind.COUNT) {
         // Will be a hyper unique cardinality column.
         // Use hyperUniqueCardinality post aggregator instead of field 
Accessor.
         // TODO: Expect to change after CALC-1787

http://git-wip-us.apache.org/repos/asf/calcite/blob/f11f89f7/druid/src/main/java/org/apache/calcite/adapter/druid/DruidRules.java
----------------------------------------------------------------------
diff --git 
a/druid/src/main/java/org/apache/calcite/adapter/druid/DruidRules.java 
b/druid/src/main/java/org/apache/calcite/adapter/druid/DruidRules.java
index d56288f..964d022 100644
--- a/druid/src/main/java/org/apache/calcite/adapter/druid/DruidRules.java
+++ b/druid/src/main/java/org/apache/calcite/adapter/druid/DruidRules.java
@@ -1037,7 +1037,7 @@ public class DruidRules {
         if (node instanceof RexCall) {
           RexCall call = (RexCall) node;
           assert DruidDateTimeUtils.extractGranularity(call) != null;
-          if (call.getKind().equals(SqlKind.FLOOR)) {
+          if (call.getKind() == SqlKind.FLOOR) {
             newSet.addAll(RelOptUtil.InputFinder.bits(call));
           }
         }

http://git-wip-us.apache.org/repos/asf/calcite/blob/f11f89f7/splunk/src/main/java/org/apache/calcite/adapter/splunk/SplunkPushDownRule.java
----------------------------------------------------------------------
diff --git 
a/splunk/src/main/java/org/apache/calcite/adapter/splunk/SplunkPushDownRule.java
 
b/splunk/src/main/java/org/apache/calcite/adapter/splunk/SplunkPushDownRule.java
index fdf5b9d..491e340 100644
--- 
a/splunk/src/main/java/org/apache/calcite/adapter/splunk/SplunkPushDownRule.java
+++ 
b/splunk/src/main/java/org/apache/calcite/adapter/splunk/SplunkPushDownRule.java
@@ -395,7 +395,7 @@ public class SplunkPushDownRule
     SqlTypeName litSqlType = literal.getTypeName();
     if (SqlTypeName.NUMERIC_TYPES.contains(litSqlType)) {
       value = literal.getValue().toString();
-    } else if (litSqlType.equals(SqlTypeName.CHAR)) {
+    } else if (litSqlType == SqlTypeName.CHAR) {
       value = ((NlsString) literal.getValue()).getValue();
       if (like) {
         value = value.replaceAll("%", "*");

http://git-wip-us.apache.org/repos/asf/calcite/blob/f11f89f7/src/main/config/forbidden-apis/signatures.txt
----------------------------------------------------------------------
diff --git a/src/main/config/forbidden-apis/signatures.txt 
b/src/main/config/forbidden-apis/signatures.txt
index 4c4a8c5..9c08b23 100644
--- a/src/main/config/forbidden-apis/signatures.txt
+++ b/src/main/config/forbidden-apis/signatures.txt
@@ -48,4 +48,7 @@ java.lang.Runtime#exec(java.lang.String, java.lang.String[], 
java.io.File)
 java.lang.Runtime#exec(java.lang.String[], java.lang.String[])
 java.lang.Runtime#exec(java.lang.String[], java.lang.String[], java.io.File)
 
+@defaultMessage For an enum, use == rather than equals
+java.lang.Enum#equals(java.lang.Object)
+
 # End signatures.txt

Reply via email to