MINOR: Various cleanups in generator (#15807)

Reviewers: Chia-Ping Tsai <chia7712@gmail.com>
This commit is contained in:
Mickael Maison 2024-04-27 01:16:29 +02:00 committed by GitHub
parent c287ad5dbe
commit cc5955d5b2
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
10 changed files with 22 additions and 29 deletions

View File

@ -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")) {

View File

@ -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.");
}

View File

@ -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");

View File

@ -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);

View File

@ -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;

View File

@ -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;

View File

@ -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)) {

View File

@ -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(

View File

@ -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

View File

@ -71,7 +71,7 @@ public class VersionConditionalTest {
}
@Test
public void testAllowMembershipCheckAlwaysFalseFails() throws Exception {
public void testAllowMembershipCheckAlwaysFalseFails() {
try {
CodeBuffer buffer = new CodeBuffer();
VersionConditional.