You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kafka.apache.org by ch...@apache.org on 2024/04/26 23:16:35 UTC

(kafka) branch trunk updated: MINOR: Various cleanups in generator (#15807)

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

chia7712 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 cc5955d5b28 MINOR: Various cleanups in generator (#15807)
cc5955d5b28 is described below

commit cc5955d5b2848c9e235e69bc44f2f511bc4ae4a7
Author: Mickael Maison <mi...@users.noreply.github.com>
AuthorDate: Sat Apr 27 01:16:29 2024 +0200

    MINOR: Various cleanups in generator (#15807)
    
    Reviewers: Chia-Ping Tsai <ch...@gmail.com>
---
 .../apache/kafka/message/ApiMessageTypeGenerator.java  |  2 +-
 .../main/java/org/apache/kafka/message/FieldType.java  |  2 +-
 .../java/org/apache/kafka/message/HeaderGenerator.java |  4 ++--
 .../apache/kafka/message/JsonConverterGenerator.java   |  4 ++--
 .../java/org/apache/kafka/message/SchemaGenerator.java | 10 +++++-----
 .../java/org/apache/kafka/message/StructRegistry.java  |  5 +----
 .../main/java/org/apache/kafka/message/Versions.java   |  2 +-
 .../apache/kafka/message/MessageDataGeneratorTest.java |  2 +-
 .../org/apache/kafka/message/MessageGeneratorTest.java | 18 +++++++-----------
 .../apache/kafka/message/VersionConditionalTest.java   |  2 +-
 10 files changed, 22 insertions(+), 29 deletions(-)

diff --git a/generator/src/main/java/org/apache/kafka/message/ApiMessageTypeGenerator.java b/generator/src/main/java/org/apache/kafka/message/ApiMessageTypeGenerator.java
index 2f9cc320498..7aa9d23d73b 100644
--- a/generator/src/main/java/org/apache/kafka/message/ApiMessageTypeGenerator.java
+++ b/generator/src/main/java/org/apache/kafka/message/ApiMessageTypeGenerator.java
@@ -366,7 +366,7 @@ public final class ApiMessageTypeGenerator implements TypeClassGenerator {
                 buffer.printf("}%n");
             }
             ApiData data = entry.getValue();
-            MessageSpec spec = null;
+            MessageSpec spec;
             if (type.equals("request")) {
                 spec = data.requestSpec;
             } else if (type.equals("response")) {
diff --git a/generator/src/main/java/org/apache/kafka/message/FieldType.java b/generator/src/main/java/org/apache/kafka/message/FieldType.java
index a6d178a7813..a0fa201100e 100644
--- a/generator/src/main/java/org/apache/kafka/message/FieldType.java
+++ b/generator/src/main/java/org/apache/kafka/message/FieldType.java
@@ -413,7 +413,7 @@ public interface FieldType {
             default:
                 if (string.startsWith(ARRAY_PREFIX)) {
                     String elementTypeString = string.substring(ARRAY_PREFIX.length());
-                    if (elementTypeString.length() == 0) {
+                    if (elementTypeString.isEmpty()) {
                         throw new RuntimeException("Can't parse array type " + string +
                             ".  No element type found.");
                     }
diff --git a/generator/src/main/java/org/apache/kafka/message/HeaderGenerator.java b/generator/src/main/java/org/apache/kafka/message/HeaderGenerator.java
index e1b9c129356..4bc3c64b33e 100644
--- a/generator/src/main/java/org/apache/kafka/message/HeaderGenerator.java
+++ b/generator/src/main/java/org/apache/kafka/message/HeaderGenerator.java
@@ -71,8 +71,8 @@ public final class HeaderGenerator {
 
     public void generate() {
         Objects.requireNonNull(packageName);
-        for (int i = 0; i < HEADER.length; i++) {
-            buffer.printf("%s%n", HEADER[i]);
+        for (String header : HEADER) {
+            buffer.printf("%s%n", header);
         }
         buffer.printf("package %s;%n", packageName);
         buffer.printf("%n");
diff --git a/generator/src/main/java/org/apache/kafka/message/JsonConverterGenerator.java b/generator/src/main/java/org/apache/kafka/message/JsonConverterGenerator.java
index 8ce07b9275d..e89bba772f7 100644
--- a/generator/src/main/java/org/apache/kafka/message/JsonConverterGenerator.java
+++ b/generator/src/main/java/org/apache/kafka/message/JsonConverterGenerator.java
@@ -108,7 +108,7 @@ public final class JsonConverterGenerator implements MessageClassGenerator {
             VersionConditional.forVersions(mandatoryVersions, curVersions).
                 ifMember(__ -> {
                     buffer.printf("throw new RuntimeException(\"%s: unable to locate " +
-                            "field \'%s\', which is mandatory in version \" + _version);%n",
+                            "field '%s', which is mandatory in version \" + _version);%n",
                         className, field.camelCaseName());
                 }).
                 ifNotMember(__ -> {
@@ -127,7 +127,7 @@ public final class JsonConverterGenerator implements MessageClassGenerator {
                         input -> String.format("_object.%s = %s", field.camelCaseName(), input)),
                         curVersions);
                 }).ifNotMember(__ -> {
-                    buffer.printf("throw new RuntimeException(\"%s: field \'%s\' is not " +
+                    buffer.printf("throw new RuntimeException(\"%s: field '%s' is not " +
                         "supported in version \" + _version);%n",
                         className, field.camelCaseName());
                 }).generate(buffer);
diff --git a/generator/src/main/java/org/apache/kafka/message/SchemaGenerator.java b/generator/src/main/java/org/apache/kafka/message/SchemaGenerator.java
index c20ae4c001e..b1d4861015c 100644
--- a/generator/src/main/java/org/apache/kafka/message/SchemaGenerator.java
+++ b/generator/src/main/java/org/apache/kafka/message/SchemaGenerator.java
@@ -79,7 +79,7 @@ final class SchemaGenerator {
         this.messages = new HashMap<>();
     }
 
-    void generateSchemas(MessageSpec message) throws Exception {
+    void generateSchemas(MessageSpec message) {
         this.messageFlexibleVersions = message.flexibleVersions();
 
         // First generate schemas for common structures so that they are
@@ -95,7 +95,7 @@ final class SchemaGenerator {
     }
 
     void generateSchemas(String className, StructSpec struct,
-                         Versions parentVersions) throws Exception {
+                         Versions parentVersions) {
         Versions versions = parentVersions.intersect(struct.versions());
         MessageInfo messageInfo = messages.get(className);
         if (messageInfo != null) {
@@ -127,7 +127,7 @@ final class SchemaGenerator {
 
     private void generateSchemaForVersion(StructSpec struct,
                                           short version,
-                                          CodeBuffer buffer) throws Exception {
+                                          CodeBuffer buffer) {
         // Find the last valid field index.
         int lastValidIndex = struct.fields().size() - 1;
         while (true) {
@@ -172,7 +172,7 @@ final class SchemaGenerator {
     }
 
     private void generateTaggedFieldsSchemaForVersion(StructSpec struct,
-            short version, CodeBuffer buffer) throws Exception {
+            short version, CodeBuffer buffer) {
         headerGenerator.addStaticImport(MessageGenerator.TAGGED_FIELDS_SECTION_CLASS);
 
         // Find the last valid tagged field index.
@@ -339,7 +339,7 @@ final class SchemaGenerator {
      * @param className     The class name.
      * @param buffer        The destination buffer.
      */
-    void writeSchema(String className, CodeBuffer buffer) throws Exception {
+    void writeSchema(String className, CodeBuffer buffer) {
         MessageInfo messageInfo = messages.get(className);
         Versions versions = messageInfo.versions;
 
diff --git a/generator/src/main/java/org/apache/kafka/message/StructRegistry.java b/generator/src/main/java/org/apache/kafka/message/StructRegistry.java
index 4d86e9cfb7b..6d923255139 100644
--- a/generator/src/main/java/org/apache/kafka/message/StructRegistry.java
+++ b/generator/src/main/java/org/apache/kafka/message/StructRegistry.java
@@ -66,7 +66,7 @@ final class StructRegistry {
     /**
      * Register all the structures contained a message spec.
      */
-    void register(MessageSpec message) throws Exception {
+    void register(MessageSpec message) {
         // Register common structures.
         for (StructSpec struct : message.commonStructs()) {
             if (!MessageGenerator.firstIsCapitalized(struct.name())) {
@@ -83,7 +83,6 @@ final class StructRegistry {
         addStructSpecs(message.validVersions(), message.fields());
     }
 
-    @SuppressWarnings("unchecked")
     private void addStructSpecs(Versions parentVersions, List<FieldSpec> fields) {
         for (FieldSpec field : fields) {
             String typeName = null;
@@ -123,7 +122,6 @@ final class StructRegistry {
     /**
      * Locate the struct corresponding to a field.
      */
-    @SuppressWarnings("unchecked")
     StructSpec findStruct(FieldSpec field) {
         String structFieldName;
         if (field.type().isArray()) {
@@ -147,7 +145,6 @@ final class StructRegistry {
     /**
      * Return true if the field is a struct array with keys.
      */
-    @SuppressWarnings("unchecked")
     boolean isStructArrayWithKeys(FieldSpec field) {
         if (!field.type().isArray()) {
             return false;
diff --git a/generator/src/main/java/org/apache/kafka/message/Versions.java b/generator/src/main/java/org/apache/kafka/message/Versions.java
index 2c082cc6f23..80fe11afce7 100644
--- a/generator/src/main/java/org/apache/kafka/message/Versions.java
+++ b/generator/src/main/java/org/apache/kafka/message/Versions.java
@@ -42,7 +42,7 @@ public final class Versions {
             return defaultVersions;
         }
         String trimmedInput = input.trim();
-        if (trimmedInput.length() == 0) {
+        if (trimmedInput.isEmpty()) {
             return defaultVersions;
         }
         if (trimmedInput.equals(NONE_STRING)) {
diff --git a/generator/src/test/java/org/apache/kafka/message/MessageDataGeneratorTest.java b/generator/src/test/java/org/apache/kafka/message/MessageDataGeneratorTest.java
index 77598f10426..02c14fb7008 100644
--- a/generator/src/test/java/org/apache/kafka/message/MessageDataGeneratorTest.java
+++ b/generator/src/test/java/org/apache/kafka/message/MessageDataGeneratorTest.java
@@ -208,7 +208,7 @@ public class MessageDataGeneratorTest {
     }
 
     @Test
-    public void testInvalidTaggedVersionsNotASubetOfVersions() {
+    public void testInvalidTaggedVersionsNotASubsetOfVersions() {
         assertStringContains("taggedVersions must be a subset of versions",
             assertThrows(Throwable.class, () -> {
                 MessageGenerator.JSON_SERDE.readValue(String.join("", Arrays.asList(
diff --git a/generator/src/test/java/org/apache/kafka/message/MessageGeneratorTest.java b/generator/src/test/java/org/apache/kafka/message/MessageGeneratorTest.java
index 8eb38e999c7..dcd602ca1fb 100644
--- a/generator/src/test/java/org/apache/kafka/message/MessageGeneratorTest.java
+++ b/generator/src/test/java/org/apache/kafka/message/MessageGeneratorTest.java
@@ -21,35 +21,35 @@ import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.Timeout;
 
 import static org.junit.jupiter.api.Assertions.assertFalse;
+import static org.junit.jupiter.api.Assertions.assertThrows;
 import static org.junit.jupiter.api.Assertions.assertTrue;
 import static org.junit.jupiter.api.Assertions.assertEquals;
-import static org.junit.jupiter.api.Assertions.fail;
 
 @Timeout(120)
 public class MessageGeneratorTest {
 
     @Test
-    public void testCapitalizeFirst() throws Exception {
+    public void testCapitalizeFirst() {
         assertEquals("", MessageGenerator.capitalizeFirst(""));
         assertEquals("AbC", MessageGenerator.capitalizeFirst("abC"));
     }
 
     @Test
-    public void testLowerCaseFirst() throws Exception {
+    public void testLowerCaseFirst() {
         assertEquals("", MessageGenerator.lowerCaseFirst(""));
         assertEquals("fORTRAN", MessageGenerator.lowerCaseFirst("FORTRAN"));
         assertEquals("java", MessageGenerator.lowerCaseFirst("java"));
     }
 
     @Test
-    public void testFirstIsCapitalized() throws Exception {
+    public void testFirstIsCapitalized() {
         assertFalse(MessageGenerator.firstIsCapitalized(""));
         assertTrue(MessageGenerator.firstIsCapitalized("FORTRAN"));
         assertFalse(MessageGenerator.firstIsCapitalized("java"));
     }
 
     @Test
-    public void testToSnakeCase() throws Exception {
+    public void testToSnakeCase() {
         assertEquals("", MessageGenerator.toSnakeCase(""));
         assertEquals("foo_bar_baz", MessageGenerator.toSnakeCase("FooBarBaz"));
         assertEquals("foo_bar_baz", MessageGenerator.toSnakeCase("fooBarBaz"));
@@ -57,15 +57,11 @@ public class MessageGeneratorTest {
     }
 
     @Test
-    public void stripSuffixTest() throws Exception {
+    public void stripSuffixTest() {
         assertEquals("FooBa", MessageGenerator.stripSuffix("FooBar", "r"));
         assertEquals("", MessageGenerator.stripSuffix("FooBar", "FooBar"));
         assertEquals("Foo", MessageGenerator.stripSuffix("FooBar", "Bar"));
-        try {
-            MessageGenerator.stripSuffix("FooBar", "Baz");
-            fail("expected exception");
-        } catch (RuntimeException e) {
-        }
+        assertThrows(RuntimeException.class, () -> MessageGenerator.stripSuffix("FooBar", "Baz"));
     }
 
     @Test
diff --git a/generator/src/test/java/org/apache/kafka/message/VersionConditionalTest.java b/generator/src/test/java/org/apache/kafka/message/VersionConditionalTest.java
index 9d7cdcef311..4dbfd0e3ed2 100644
--- a/generator/src/test/java/org/apache/kafka/message/VersionConditionalTest.java
+++ b/generator/src/test/java/org/apache/kafka/message/VersionConditionalTest.java
@@ -71,7 +71,7 @@ public class VersionConditionalTest {
     }
 
     @Test
-    public void testAllowMembershipCheckAlwaysFalseFails() throws Exception {
+    public void testAllowMembershipCheckAlwaysFalseFails() {
         try {
             CodeBuffer buffer = new CodeBuffer();
             VersionConditional.