diff --git a/buildSrc/src/main/groovy/org/apache/beam/gradle/BeamModulePlugin.groovy b/buildSrc/src/main/groovy/org/apache/beam/gradle/BeamModulePlugin.groovy index 2730891bf861..57a56e66b168 100644 --- a/buildSrc/src/main/groovy/org/apache/beam/gradle/BeamModulePlugin.groovy +++ b/buildSrc/src/main/groovy/org/apache/beam/gradle/BeamModulePlugin.groovy @@ -1532,25 +1532,19 @@ class BeamModulePlugin implements Plugin { def disabledChecks = [ // TODO(https://github.com/apache/beam/issues/20955): Enable errorprone checks "AutoValueImmutableFields", - "AutoValueSubclassLeaked", "ComparableType", "DoNotMockAutoValue", "EmptyBlockTag", - "EqualsUnsafeCast", - "EscapedEntity", "ExtendsAutoValue", "InlineMeSuggester", "InvalidBlockTag", "JodaConstructors", "MixedMutabilityReturnType", "PreferJavaTimeOverload", - "NonCanonicalType", "Slf4jSignOnlyFormat", - "UnescapedEntity", "UnrecognisedJavadocTag", // errorprone 3.2.0+ checks "DirectInvocationOnMock", - "JUnitIncompatibleType", "MockNotUsedInProduction", "NullableWildcard", "SuperCallToObjectMethod", diff --git a/runners/google-cloud-dataflow-java/worker/src/test/java/org/apache/beam/runners/dataflow/worker/WorkerCustomSourcesTest.java b/runners/google-cloud-dataflow-java/worker/src/test/java/org/apache/beam/runners/dataflow/worker/WorkerCustomSourcesTest.java index e51be59cc4e7..ce8ad32f71aa 100644 --- a/runners/google-cloud-dataflow-java/worker/src/test/java/org/apache/beam/runners/dataflow/worker/WorkerCustomSourcesTest.java +++ b/runners/google-cloud-dataflow-java/worker/src/test/java/org/apache/beam/runners/dataflow/worker/WorkerCustomSourcesTest.java @@ -167,8 +167,8 @@ public void setUp() throws Exception { public void testSplitAndReadBundlesBack() throws Exception { com.google.api.services.dataflow.model.Source source = translateIOToCloudSource(CountingSource.upTo(10L), options); - List> elems = readElemsFromSource(options, source); - assertEquals(10L, elems.size()); + List> elems = readElemsFromSource(options, source); + assertEquals(10, elems.size()); for (long i = 0; i < 10L; i++) { assertEquals(valueInGlobalWindow(i), elems.get((int) i)); } @@ -188,7 +188,7 @@ public void testSplitAndReadBundlesBack() throws Exception { com.google.api.services.dataflow.model.Source bundleSource = bundle.getSource(); assertTrue(bundleSource.getDoesNotNeedSplitting()); bundleSource.setCodec(source.getCodec()); - List> xs = readElemsFromSource(options, bundleSource); + List> xs = readElemsFromSource(options, bundleSource); assertThat( "Failed on bundle " + i, xs, @@ -305,15 +305,15 @@ public void testProgressAndSourceSplitTranslation() throws Exception { // Same as previous test, but now using BasicSerializableSourceFormat wrappers. // We know that the underlying reader behaves correctly (because of the previous test), // now check that we are wrapping it correctly. - NativeReader> reader = - (NativeReader>) + NativeReader> reader = + (NativeReader>) ReaderRegistry.defaultRegistry() .create( translateIOToCloudSource(CountingSource.upTo(10), options), options, null, // executionContext TestOperationContext.create()); - try (NativeReader.NativeReaderIterator> iterator = reader.iterator()) { + try (NativeReader.NativeReaderIterator> iterator = reader.iterator()) { assertTrue(iterator.start()); assertEquals(valueInGlobalWindow(0L), iterator.getCurrent()); assertEquals( diff --git a/runners/java-fn-execution/src/main/java/org/apache/beam/runners/fnexecution/control/DefaultJobBundleFactory.java b/runners/java-fn-execution/src/main/java/org/apache/beam/runners/fnexecution/control/DefaultJobBundleFactory.java index da5da6c9d603..e8ef905f3585 100644 --- a/runners/java-fn-execution/src/main/java/org/apache/beam/runners/fnexecution/control/DefaultJobBundleFactory.java +++ b/runners/java-fn-execution/src/main/java/org/apache/beam/runners/fnexecution/control/DefaultJobBundleFactory.java @@ -734,6 +734,10 @@ public abstract static class ServerInfo { abstract Builder toBuilder(); + public static Builder builder() { + return new AutoValue_DefaultJobBundleFactory_ServerInfo.Builder(); + } + @AutoValue.Builder abstract static class Builder { abstract Builder setControlServer(GrpcFnServer server); diff --git a/runners/java-fn-execution/src/test/java/org/apache/beam/runners/fnexecution/control/DefaultJobBundleFactoryTest.java b/runners/java-fn-execution/src/test/java/org/apache/beam/runners/fnexecution/control/DefaultJobBundleFactoryTest.java index 94e081d02684..692efdc2a0be 100644 --- a/runners/java-fn-execution/src/test/java/org/apache/beam/runners/fnexecution/control/DefaultJobBundleFactoryTest.java +++ b/runners/java-fn-execution/src/test/java/org/apache/beam/runners/fnexecution/control/DefaultJobBundleFactoryTest.java @@ -136,7 +136,7 @@ public void setUpMocks() throws Exception { when(stateServer.getService()).thenReturn(stateService); when(provisioningServer.getService()).thenReturn(provisionService); serverInfo = - new AutoValue_DefaultJobBundleFactory_ServerInfo.Builder() + DefaultJobBundleFactory.ServerInfo.builder() .setControlServer(controlServer) .setLoggingServer(loggingServer) .setRetrievalServer(retrievalServer) diff --git a/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/ApproximateQuantiles.java b/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/ApproximateQuantiles.java index 5d15d23afe0f..0283d4ead9a1 100644 --- a/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/ApproximateQuantiles.java +++ b/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/ApproximateQuantiles.java @@ -507,8 +507,8 @@ private long offset(long newWeight) { /** * Emulates taking the ordered union of all elements in buffers, repeated according to their - * weight, and picking out the (k * step + offset)-th elements of this list for {@code 0 <= k - * < count}. + * weight, and picking out the (k * step + offset)-th elements of this list for 0 <= k < + * count. */ private List interpolate( Iterable> buffers, int count, double step, double offset) { diff --git a/sdks/java/core/src/test/java/org/apache/beam/sdk/io/GenerateSequenceTest.java b/sdks/java/core/src/test/java/org/apache/beam/sdk/io/GenerateSequenceTest.java index 3907141b0549..2cb157977584 100644 --- a/sdks/java/core/src/test/java/org/apache/beam/sdk/io/GenerateSequenceTest.java +++ b/sdks/java/core/src/test/java/org/apache/beam/sdk/io/GenerateSequenceTest.java @@ -174,16 +174,15 @@ public void testUnboundedDisplayData() { @Test public void testBuildExternal() { - @SuppressWarnings("NonCanonicalType") GenerateSequence.External.ExternalConfiguration externalConfig = - new AutoValue_GenerateSequence.External.ExternalConfiguration(); + new GenerateSequence.External.ExternalConfiguration(); externalConfig.setStart(42L); externalConfig.setStop(43L); externalConfig.setElementsPerPeriod(1L); externalConfig.setMaxReadTime(2L); externalConfig.setPeriod(3L); - AutoValue_GenerateSequence.Builder builder = new AutoValue_GenerateSequence.Builder(); + GenerateSequence.Builder builder = GenerateSequence.from(0).toBuilder(); GenerateSequence object = builder.buildExternal(externalConfig); assertThat(object.getFrom(), is(42L)); assertThat(object.getTo(), is(43L)); diff --git a/sdks/java/core/src/test/java/org/apache/beam/sdk/schemas/logicaltypes/LogicalTypesTest.java b/sdks/java/core/src/test/java/org/apache/beam/sdk/schemas/logicaltypes/LogicalTypesTest.java index 3c1e9029db71..1db7c2c59310 100644 --- a/sdks/java/core/src/test/java/org/apache/beam/sdk/schemas/logicaltypes/LogicalTypesTest.java +++ b/sdks/java/core/src/test/java/org/apache/beam/sdk/schemas/logicaltypes/LogicalTypesTest.java @@ -96,7 +96,7 @@ public void testNanosInstant() { Schema schema = Schema.builder().addLogicalTypeField("now", new NanosInstant()).build(); Row row = Row.withSchema(schema).addValues(now).build(); - assertEquals(now, row.getLogicalTypeValue(0, NanosInstant.class)); + assertEquals(now, row.getLogicalTypeValue(0, Instant.class)); assertEquals(nowAsRow, row.getBaseValue(0, Row.class)); } @@ -108,7 +108,7 @@ public void testNanosDuration() { Schema schema = Schema.builder().addLogicalTypeField("duration", new NanosDuration()).build(); Row row = Row.withSchema(schema).addValues(duration).build(); - assertEquals(duration, row.getLogicalTypeValue(0, NanosDuration.class)); + assertEquals(duration, row.getLogicalTypeValue(0, Duration.class)); assertEquals(durationAsRow, row.getBaseValue(0, Row.class)); } diff --git a/sdks/java/core/src/test/java/org/apache/beam/sdk/schemas/utils/TestPOJOs.java b/sdks/java/core/src/test/java/org/apache/beam/sdk/schemas/utils/TestPOJOs.java index 0d9338654ad9..b82c4dc0e7e6 100644 --- a/sdks/java/core/src/test/java/org/apache/beam/sdk/schemas/utils/TestPOJOs.java +++ b/sdks/java/core/src/test/java/org/apache/beam/sdk/schemas/utils/TestPOJOs.java @@ -891,7 +891,7 @@ public boolean equals(@Nullable Object o) { if (this == o) { return true; } - if (!(o instanceof PojoWithNestedArray)) { + if (!(o instanceof PojoWithIterable)) { return false; } PojoWithIterable that = (PojoWithIterable) o; diff --git a/sdks/java/io/google-cloud-platform/src/main/java/org/apache/beam/sdk/io/gcp/bigquery/BigQueryCoderProviderRegistrar.java b/sdks/java/io/google-cloud-platform/src/main/java/org/apache/beam/sdk/io/gcp/bigquery/BigQueryCoderProviderRegistrar.java index 2636630d22ec..4c8d5c86f6ae 100644 --- a/sdks/java/io/google-cloud-platform/src/main/java/org/apache/beam/sdk/io/gcp/bigquery/BigQueryCoderProviderRegistrar.java +++ b/sdks/java/io/google-cloud-platform/src/main/java/org/apache/beam/sdk/io/gcp/bigquery/BigQueryCoderProviderRegistrar.java @@ -34,6 +34,6 @@ public List getCoderProviders() { return ImmutableList.of( CoderProviders.forCoder(TypeDescriptor.of(TableRow.class), TableRowJsonCoder.of()), CoderProviders.forCoder( - TypeDescriptor.of(AutoValue_RowMutation.class), RowMutation.RowMutationCoder.of())); + TypeDescriptor.of(RowMutation.class), RowMutation.RowMutationCoder.of())); } } diff --git a/sdks/java/io/google-cloud-platform/src/main/java/org/apache/beam/sdk/io/gcp/bigquery/BigQueryIO.java b/sdks/java/io/google-cloud-platform/src/main/java/org/apache/beam/sdk/io/gcp/bigquery/BigQueryIO.java index 5c035cca08ea..457ea64ea014 100644 --- a/sdks/java/io/google-cloud-platform/src/main/java/org/apache/beam/sdk/io/gcp/bigquery/BigQueryIO.java +++ b/sdks/java/io/google-cloud-platform/src/main/java/org/apache/beam/sdk/io/gcp/bigquery/BigQueryIO.java @@ -1194,6 +1194,10 @@ interface FromBeamRowFunction abstract Builder toBuilder(); + public static Builder builder() { + return new AutoValue_BigQueryIO_TypedRead.Builder<>(); + } + @AutoValue.Builder abstract static class Builder { abstract Builder setJsonTableRef(ValueProvider jsonTableRef); @@ -2790,6 +2794,10 @@ public enum Method { abstract Builder toBuilder(); + public static Builder builder() { + return new AutoValue_BigQueryIO_Write.Builder<>(); + } + @AutoValue.Builder abstract static class Builder { abstract Builder setJsonTableRef(ValueProvider jsonTableRef); diff --git a/sdks/java/io/google-cloud-platform/src/main/java/org/apache/beam/sdk/io/gcp/bigquery/BigQueryIOTranslation.java b/sdks/java/io/google-cloud-platform/src/main/java/org/apache/beam/sdk/io/gcp/bigquery/BigQueryIOTranslation.java index acc71df14aaf..e5dd2b540019 100644 --- a/sdks/java/io/google-cloud-platform/src/main/java/org/apache/beam/sdk/io/gcp/bigquery/BigQueryIOTranslation.java +++ b/sdks/java/io/google-cloud-platform/src/main/java/org/apache/beam/sdk/io/gcp/bigquery/BigQueryIOTranslation.java @@ -217,7 +217,7 @@ public TypedRead fromConfigRow(Row configRow, PipelineOptions options) { (updateCompatibilityBeamVersion != null) ? updateCompatibilityBeamVersion : "2.53.0"; try { - BigQueryIO.TypedRead.Builder builder = new AutoValue_BigQueryIO_TypedRead.Builder<>(); + BigQueryIO.TypedRead.Builder builder = BigQueryIO.TypedRead.builder(); String jsonTableRef = configRow.getString("json_table_ref"); if (jsonTableRef != null) { @@ -378,7 +378,9 @@ public static class ReadRegistrar implements TransformPayloadTranslatorRegistrar public Map, ? extends TransformPayloadTranslator> getTransformPayloadTranslators() { return ImmutableMap., TransformPayloadTranslator>builder() - .put(AutoValue_BigQueryIO_TypedRead.class, new BigQueryIOReadTranslator()) + .put( + BigQueryIO.read(BigQueryIO.TableRowParser.INSTANCE).getClass(), + new BigQueryIOReadTranslator()) .build(); } } @@ -615,7 +617,7 @@ public Write fromConfigRow(Row configRow, PipelineOptions options) { (updateCompatibilityBeamVersion != null) ? updateCompatibilityBeamVersion : "2.53.0"; try { - BigQueryIO.Write.Builder builder = new AutoValue_BigQueryIO_Write.Builder<>(); + BigQueryIO.Write.Builder builder = BigQueryIO.Write.builder(); String jsonTableRef = configRow.getString("json_table_ref"); if (jsonTableRef != null) { @@ -928,7 +930,7 @@ public static class WriteRegistrar implements TransformPayloadTranslatorRegistra public Map, ? extends TransformPayloadTranslator> getTransformPayloadTranslators() { return ImmutableMap., TransformPayloadTranslator>builder() - .put(AutoValue_BigQueryIO_Write.class, new BigQueryIOWriteTranslator()) + .put(BigQueryIO.write().getClass(), new BigQueryIOWriteTranslator()) .build(); } } diff --git a/sdks/java/io/google-cloud-platform/src/main/java/org/apache/beam/sdk/io/gcp/bigquery/WritePartition.java b/sdks/java/io/google-cloud-platform/src/main/java/org/apache/beam/sdk/io/gcp/bigquery/WritePartition.java index cdebf1172cba..e44608b8dee3 100644 --- a/sdks/java/io/google-cloud-platform/src/main/java/org/apache/beam/sdk/io/gcp/bigquery/WritePartition.java +++ b/sdks/java/io/google-cloud-platform/src/main/java/org/apache/beam/sdk/io/gcp/bigquery/WritePartition.java @@ -49,6 +49,10 @@ abstract static class Result { public abstract List getFilenames(); abstract boolean isFirstPane(); + + public static Result of(List filenames, boolean isFirstPane) { + return new AutoValue_WritePartition_Result(filenames, isFirstPane); + } } static class ResultCoder extends AtomicCoder { diff --git a/sdks/java/io/google-cloud-platform/src/main/java/org/apache/beam/sdk/io/gcp/bigquery/WriteTables.java b/sdks/java/io/google-cloud-platform/src/main/java/org/apache/beam/sdk/io/gcp/bigquery/WriteTables.java index 070f849e43e6..fb9ad2e8d0f5 100644 --- a/sdks/java/io/google-cloud-platform/src/main/java/org/apache/beam/sdk/io/gcp/bigquery/WriteTables.java +++ b/sdks/java/io/google-cloud-platform/src/main/java/org/apache/beam/sdk/io/gcp/bigquery/WriteTables.java @@ -102,6 +102,10 @@ abstract static class Result { abstract String getTableName(); abstract boolean isFirstPane(); + + public static Result of(String tableName, boolean isFirstPane) { + return new AutoValue_WriteTables_Result(tableName, isFirstPane); + } } static class ResultCoder extends AtomicCoder { diff --git a/sdks/java/io/google-cloud-platform/src/test/java/org/apache/beam/sdk/io/gcp/bigquery/BigQueryIOWriteTest.java b/sdks/java/io/google-cloud-platform/src/test/java/org/apache/beam/sdk/io/gcp/bigquery/BigQueryIOWriteTest.java index e5ad761993e7..5802838a4f39 100644 --- a/sdks/java/io/google-cloud-platform/src/test/java/org/apache/beam/sdk/io/gcp/bigquery/BigQueryIOWriteTest.java +++ b/sdks/java/io/google-cloud-platform/src/test/java/org/apache/beam/sdk/io/gcp/bigquery/BigQueryIOWriteTest.java @@ -2962,7 +2962,7 @@ public void testWriteTables() throws Exception { partitions.add( KV.of( ShardedKey.of(tableDestination.getTableSpec(), j), - new AutoValue_WritePartition_Result(filesPerPartition, true))); + WritePartition.Result.of(filesPerPartition, true))); String json = String.format( @@ -3089,8 +3089,7 @@ public void testWriteRename() throws Exception { expectedRowsPerTable.putAll(tableDestination, rows); String tableJson = toJsonString(tempTable); tempTables.put(tableDestination, tableJson); - tempTablesElement.add( - KV.of(tableDestination, new AutoValue_WriteTables_Result(tableJson, true))); + tempTablesElement.add(KV.of(tableDestination, WriteTables.Result.of(tableJson, true))); } } diff --git a/sdks/java/io/hadoop-format/src/main/java/org/apache/beam/sdk/io/hadoop/format/HadoopFormatIO.java b/sdks/java/io/hadoop-format/src/main/java/org/apache/beam/sdk/io/hadoop/format/HadoopFormatIO.java index 155bf2d4a77f..0412e4286bb8 100644 --- a/sdks/java/io/hadoop-format/src/main/java/org/apache/beam/sdk/io/hadoop/format/HadoopFormatIO.java +++ b/sdks/java/io/hadoop-format/src/main/java/org/apache/beam/sdk/io/hadoop/format/HadoopFormatIO.java @@ -184,8 +184,8 @@ * available for value class hence value translation is required.). * *
{@code
- * SimpleFunction<InputFormatValueClass, MyValueClass> myOutputValueType =
- *      new SimpleFunction<InputFormatValueClass, MyValueClass>() {
+ * SimpleFunction myOutputValueType =
+ *      new SimpleFunction() {
  *          public MyValueClass apply(InputFormatValueClass input) {
  *            // ...logic to transform InputFormatValueClass to MyValueClass
  *          }
@@ -257,15 +257,15 @@
  * 
{@code
  * Configuration myHadoopConfiguration = new Configuration(false);
  * // Set Hadoop OutputFormat, key and value class in configuration
- * myHadoopConfiguration.setClass("mapreduce.job.outputformat.class",
+ * myHadoopConfiguration.setClass("mapreduce.job.outputformat.class",
  *    MyDbOutputFormatClass, OutputFormat.class);
- * myHadoopConfiguration.setClass("mapreduce.job.output.key.class",
+ * myHadoopConfiguration.setClass("mapreduce.job.output.key.class",
  *    MyDbOutputFormatKeyClass, Object.class);
- * myHadoopConfiguration.setClass("mapreduce.job.output.value.class",
+ * myHadoopConfiguration.setClass("mapreduce.job.output.value.class",
  *    MyDbOutputFormatValueClass, Object.class);
- * myHadoopConfiguration.setClass("mapreduce.job.partitioner.class",
+ * myHadoopConfiguration.setClass("mapreduce.job.partitioner.class",
  *    MyPartitionerClass, Object.class);
- * myHadoopConfiguration.setInt("mapreduce.job.reduces", 2);
+ * myHadoopConfiguration.setInt("mapreduce.job.reduces", 2);
  * }
* *

You will need to set OutputFormat key and value class (i.e. "mapreduce.job.output.key.class" diff --git a/sdks/java/io/mongodb/src/main/java/org/apache/beam/sdk/io/mongodb/MongoDbIO.java b/sdks/java/io/mongodb/src/main/java/org/apache/beam/sdk/io/mongodb/MongoDbIO.java index 1bcc54c15667..fc2a761b99a8 100644 --- a/sdks/java/io/mongodb/src/main/java/org/apache/beam/sdk/io/mongodb/MongoDbIO.java +++ b/sdks/java/io/mongodb/src/main/java/org/apache/beam/sdk/io/mongodb/MongoDbIO.java @@ -41,7 +41,6 @@ import com.mongodb.client.model.UpdateOptions; import com.mongodb.client.model.WriteModel; import java.util.ArrayList; -import java.util.Arrays; import java.util.Collections; import java.util.HashMap; import java.util.List; @@ -329,8 +328,7 @@ public Read withBucketAuto(boolean bucketAuto) { public Read withQueryFn( SerializableFunction, MongoCursor> queryBuilderFn) { checkArgument( - Arrays.asList(AutoValue_FindQuery.class, AutoValue_AggregationQuery.class) - .contains(queryBuilderFn.getClass()), + (queryBuilderFn instanceof FindQuery || queryBuilderFn instanceof AggregationQuery), String.format("[%s]" + ERROR_MSG_QUERY_FN, queryBuilderFn.getClass().getName())); return builder().setQueryFn(queryBuilderFn).build(); } @@ -504,7 +502,7 @@ public List> split( List splitKeys; List> sources = new ArrayList<>(); - if (spec.queryFn().getClass() == AutoValue_FindQuery.class) { + if (spec.queryFn() instanceof FindQuery) { if (spec.bucketAuto()) { splitKeys = buildAutoBuckets(mongoDatabase, spec); } else {