diff --git a/seatunnel-connectors-v2/connector-cdc/connector-cdc-mongodb/src/main/java/org/apache/seatunnel/connectors/seatunnel/cdc/mongodb/MongodbIncrementalSource.java b/seatunnel-connectors-v2/connector-cdc/connector-cdc-mongodb/src/main/java/org/apache/seatunnel/connectors/seatunnel/cdc/mongodb/MongodbIncrementalSource.java index 0045b03c481..e85b4b57a7c 100644 --- a/seatunnel-connectors-v2/connector-cdc/connector-cdc-mongodb/src/main/java/org/apache/seatunnel/connectors/seatunnel/cdc/mongodb/MongodbIncrementalSource.java +++ b/seatunnel-connectors-v2/connector-cdc/connector-cdc-mongodb/src/main/java/org/apache/seatunnel/connectors/seatunnel/cdc/mongodb/MongodbIncrementalSource.java @@ -19,7 +19,6 @@ import org.apache.seatunnel.api.configuration.Option; import org.apache.seatunnel.api.configuration.ReadonlyConfig; -import org.apache.seatunnel.api.source.SeaTunnelSource; import org.apache.seatunnel.api.source.SupportParallelism; import org.apache.seatunnel.api.table.catalog.CatalogTable; import org.apache.seatunnel.api.table.type.SeaTunnelDataType; @@ -41,16 +40,11 @@ import org.apache.seatunnel.connectors.seatunnel.cdc.mongodb.source.dialect.MongodbDialect; import org.apache.seatunnel.connectors.seatunnel.cdc.mongodb.source.offset.ChangeStreamOffsetFactory; -import com.google.auto.service.AutoService; -import lombok.NoArgsConstructor; - import javax.annotation.Nonnull; import java.util.List; import java.util.Optional; -@NoArgsConstructor -@AutoService(SeaTunnelSource.class) public class MongodbIncrementalSource extends IncrementalSource implements SupportParallelism { diff --git a/seatunnel-connectors-v2/connector-cdc/connector-cdc-mysql/src/main/java/org/apache/seatunnel/connectors/seatunnel/cdc/mysql/source/MySqlIncrementalSource.java b/seatunnel-connectors-v2/connector-cdc/connector-cdc-mysql/src/main/java/org/apache/seatunnel/connectors/seatunnel/cdc/mysql/source/MySqlIncrementalSource.java index 67ff9ff6079..da11ede2464 100644 --- a/seatunnel-connectors-v2/connector-cdc/connector-cdc-mysql/src/main/java/org/apache/seatunnel/connectors/seatunnel/cdc/mysql/source/MySqlIncrementalSource.java +++ b/seatunnel-connectors-v2/connector-cdc/connector-cdc-mysql/src/main/java/org/apache/seatunnel/connectors/seatunnel/cdc/mysql/source/MySqlIncrementalSource.java @@ -19,7 +19,6 @@ import org.apache.seatunnel.api.configuration.Option; import org.apache.seatunnel.api.configuration.ReadonlyConfig; -import org.apache.seatunnel.api.source.SeaTunnelSource; import org.apache.seatunnel.api.source.SupportParallelism; import org.apache.seatunnel.api.table.catalog.CatalogTable; import org.apache.seatunnel.api.table.type.SeaTunnelDataType; @@ -42,14 +41,9 @@ import org.apache.seatunnel.connectors.seatunnel.cdc.mysql.source.offset.BinlogOffsetFactory; import org.apache.seatunnel.connectors.seatunnel.jdbc.catalog.JdbcCatalogOptions; -import com.google.auto.service.AutoService; -import lombok.NoArgsConstructor; - import java.time.ZoneId; import java.util.List; -@NoArgsConstructor -@AutoService(SeaTunnelSource.class) public class MySqlIncrementalSource extends IncrementalSource implements SupportParallelism { static final String IDENTIFIER = "MySQL-CDC"; diff --git a/seatunnel-connectors-v2/connector-cdc/connector-cdc-postgres/src/main/java/org/apache/seatunnel/connectors/seatunnel/cdc/postgres/source/PostgresIncrementalSource.java b/seatunnel-connectors-v2/connector-cdc/connector-cdc-postgres/src/main/java/org/apache/seatunnel/connectors/seatunnel/cdc/postgres/source/PostgresIncrementalSource.java index 0ed65a873c9..053e38440c0 100644 --- a/seatunnel-connectors-v2/connector-cdc/connector-cdc-postgres/src/main/java/org/apache/seatunnel/connectors/seatunnel/cdc/postgres/source/PostgresIncrementalSource.java +++ b/seatunnel-connectors-v2/connector-cdc/connector-cdc-postgres/src/main/java/org/apache/seatunnel/connectors/seatunnel/cdc/postgres/source/PostgresIncrementalSource.java @@ -19,7 +19,6 @@ import org.apache.seatunnel.api.configuration.Option; import org.apache.seatunnel.api.configuration.ReadonlyConfig; -import org.apache.seatunnel.api.source.SeaTunnelSource; import org.apache.seatunnel.api.source.SupportParallelism; import org.apache.seatunnel.api.table.catalog.CatalogTable; import org.apache.seatunnel.api.table.type.SeaTunnelDataType; @@ -42,12 +41,10 @@ import org.apache.kafka.connect.data.Struct; -import com.google.auto.service.AutoService; import io.debezium.jdbc.JdbcConnection; import io.debezium.relational.TableId; import io.debezium.relational.history.ConnectTableChangeSerializer; import io.debezium.relational.history.TableChanges; -import lombok.NoArgsConstructor; import java.time.ZoneId; import java.util.List; @@ -55,8 +52,6 @@ import java.util.function.Function; import java.util.stream.Collectors; -@NoArgsConstructor -@AutoService(SeaTunnelSource.class) public class PostgresIncrementalSource extends IncrementalSource implements SupportParallelism { diff --git a/seatunnel-connectors-v2/connector-cdc/connector-cdc-sqlserver/src/main/java/org/apache/seatunnel/connectors/seatunnel/cdc/sqlserver/source/source/SqlServerIncrementalSource.java b/seatunnel-connectors-v2/connector-cdc/connector-cdc-sqlserver/src/main/java/org/apache/seatunnel/connectors/seatunnel/cdc/sqlserver/source/source/SqlServerIncrementalSource.java index 4ab64ff692f..ce9df11514f 100644 --- a/seatunnel-connectors-v2/connector-cdc/connector-cdc-sqlserver/src/main/java/org/apache/seatunnel/connectors/seatunnel/cdc/sqlserver/source/source/SqlServerIncrementalSource.java +++ b/seatunnel-connectors-v2/connector-cdc/connector-cdc-sqlserver/src/main/java/org/apache/seatunnel/connectors/seatunnel/cdc/sqlserver/source/source/SqlServerIncrementalSource.java @@ -19,7 +19,6 @@ import org.apache.seatunnel.api.configuration.Option; import org.apache.seatunnel.api.configuration.ReadonlyConfig; -import org.apache.seatunnel.api.source.SeaTunnelSource; import org.apache.seatunnel.api.source.SupportParallelism; import org.apache.seatunnel.api.table.catalog.CatalogTable; import org.apache.seatunnel.api.table.type.SeaTunnelDataType; @@ -42,14 +41,9 @@ import org.apache.seatunnel.connectors.seatunnel.jdbc.catalog.JdbcCatalogOptions; import org.apache.seatunnel.connectors.seatunnel.jdbc.catalog.sqlserver.SqlServerURLParser; -import com.google.auto.service.AutoService; -import lombok.NoArgsConstructor; - import java.time.ZoneId; import java.util.List; -@NoArgsConstructor -@AutoService(SeaTunnelSource.class) public class SqlServerIncrementalSource extends IncrementalSource implements SupportParallelism { diff --git a/seatunnel-connectors-v2/connector-doris/src/main/java/org/apache/seatunnel/connectors/doris/source/DorisSource.java b/seatunnel-connectors-v2/connector-doris/src/main/java/org/apache/seatunnel/connectors/doris/source/DorisSource.java index c18a9444f27..c04f074021a 100644 --- a/seatunnel-connectors-v2/connector-doris/src/main/java/org/apache/seatunnel/connectors/doris/source/DorisSource.java +++ b/seatunnel-connectors-v2/connector-doris/src/main/java/org/apache/seatunnel/connectors/doris/source/DorisSource.java @@ -29,14 +29,12 @@ import org.apache.seatunnel.connectors.doris.source.split.DorisSourceSplit; import org.apache.seatunnel.connectors.doris.source.split.DorisSourceSplitEnumerator; -import com.google.auto.service.AutoService; import lombok.extern.slf4j.Slf4j; import java.util.Collections; import java.util.List; @Slf4j -@AutoService(SeaTunnelSource.class) public class DorisSource implements SeaTunnelSource { diff --git a/seatunnel-connectors-v2/connector-elasticsearch/src/main/java/org/apache/seatunnel/connectors/seatunnel/elasticsearch/sink/ElasticsearchSink.java b/seatunnel-connectors-v2/connector-elasticsearch/src/main/java/org/apache/seatunnel/connectors/seatunnel/elasticsearch/sink/ElasticsearchSink.java index 79862879f91..3d160adc070 100644 --- a/seatunnel-connectors-v2/connector-elasticsearch/src/main/java/org/apache/seatunnel/connectors/seatunnel/elasticsearch/sink/ElasticsearchSink.java +++ b/seatunnel-connectors-v2/connector-elasticsearch/src/main/java/org/apache/seatunnel/connectors/seatunnel/elasticsearch/sink/ElasticsearchSink.java @@ -35,15 +35,12 @@ import org.apache.seatunnel.connectors.seatunnel.elasticsearch.state.ElasticsearchCommitInfo; import org.apache.seatunnel.connectors.seatunnel.elasticsearch.state.ElasticsearchSinkState; -import com.google.auto.service.AutoService; - import java.util.Optional; import static org.apache.seatunnel.api.table.factory.FactoryUtil.discoverFactory; import static org.apache.seatunnel.connectors.seatunnel.elasticsearch.config.SinkConfig.MAX_BATCH_SIZE; import static org.apache.seatunnel.connectors.seatunnel.elasticsearch.config.SinkConfig.MAX_RETRY_COUNT; -@AutoService(SeaTunnelSink.class) public class ElasticsearchSink implements SeaTunnelSink< SeaTunnelRow, diff --git a/seatunnel-connectors-v2/connector-file/connector-file-jindo-oss/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/oss/config/OssConf.java b/seatunnel-connectors-v2/connector-file/connector-file-jindo-oss/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/oss/jindo/config/OssConf.java similarity index 96% rename from seatunnel-connectors-v2/connector-file/connector-file-jindo-oss/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/oss/config/OssConf.java rename to seatunnel-connectors-v2/connector-file/connector-file-jindo-oss/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/oss/jindo/config/OssConf.java index 79f74e90104..718be0bc8aa 100644 --- a/seatunnel-connectors-v2/connector-file/connector-file-jindo-oss/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/oss/config/OssConf.java +++ b/seatunnel-connectors-v2/connector-file/connector-file-jindo-oss/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/oss/jindo/config/OssConf.java @@ -15,7 +15,7 @@ * limitations under the License. */ -package org.apache.seatunnel.connectors.seatunnel.file.oss.config; +package org.apache.seatunnel.connectors.seatunnel.file.oss.jindo.config; import org.apache.seatunnel.shade.com.typesafe.config.Config; diff --git a/seatunnel-connectors-v2/connector-file/connector-file-jindo-oss/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/oss/config/OssConfigOptions.java b/seatunnel-connectors-v2/connector-file/connector-file-jindo-oss/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/oss/jindo/config/OssConfigOptions.java similarity index 96% rename from seatunnel-connectors-v2/connector-file/connector-file-jindo-oss/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/oss/config/OssConfigOptions.java rename to seatunnel-connectors-v2/connector-file/connector-file-jindo-oss/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/oss/jindo/config/OssConfigOptions.java index 2a2e272534e..8876cbc564b 100644 --- a/seatunnel-connectors-v2/connector-file/connector-file-jindo-oss/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/oss/config/OssConfigOptions.java +++ b/seatunnel-connectors-v2/connector-file/connector-file-jindo-oss/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/oss/jindo/config/OssConfigOptions.java @@ -15,7 +15,7 @@ * limitations under the License. */ -package org.apache.seatunnel.connectors.seatunnel.file.oss.config; +package org.apache.seatunnel.connectors.seatunnel.file.oss.jindo.config; import org.apache.seatunnel.api.configuration.Option; import org.apache.seatunnel.api.configuration.Options; diff --git a/seatunnel-connectors-v2/connector-file/connector-file-jindo-oss/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/oss/exception/OssJindoConnectorException.java b/seatunnel-connectors-v2/connector-file/connector-file-jindo-oss/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/oss/jindo/exception/OssJindoConnectorException.java similarity index 95% rename from seatunnel-connectors-v2/connector-file/connector-file-jindo-oss/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/oss/exception/OssJindoConnectorException.java rename to seatunnel-connectors-v2/connector-file/connector-file-jindo-oss/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/oss/jindo/exception/OssJindoConnectorException.java index 9e27e1dc928..93327dc233e 100644 --- a/seatunnel-connectors-v2/connector-file/connector-file-jindo-oss/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/oss/exception/OssJindoConnectorException.java +++ b/seatunnel-connectors-v2/connector-file/connector-file-jindo-oss/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/oss/jindo/exception/OssJindoConnectorException.java @@ -15,7 +15,7 @@ * limitations under the License. */ -package org.apache.seatunnel.connectors.seatunnel.file.oss.exception; +package org.apache.seatunnel.connectors.seatunnel.file.oss.jindo.exception; import org.apache.seatunnel.common.exception.SeaTunnelErrorCode; import org.apache.seatunnel.common.exception.SeaTunnelRuntimeException; diff --git a/seatunnel-connectors-v2/connector-file/connector-file-jindo-oss/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/oss/sink/OssFileSink.java b/seatunnel-connectors-v2/connector-file/connector-file-jindo-oss/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/oss/jindo/sink/OssFileSink.java similarity index 88% rename from seatunnel-connectors-v2/connector-file/connector-file-jindo-oss/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/oss/sink/OssFileSink.java rename to seatunnel-connectors-v2/connector-file/connector-file-jindo-oss/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/oss/jindo/sink/OssFileSink.java index f5be2c78628..ac6ee94992f 100644 --- a/seatunnel-connectors-v2/connector-file/connector-file-jindo-oss/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/oss/sink/OssFileSink.java +++ b/seatunnel-connectors-v2/connector-file/connector-file-jindo-oss/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/oss/jindo/sink/OssFileSink.java @@ -15,7 +15,7 @@ * limitations under the License. */ -package org.apache.seatunnel.connectors.seatunnel.file.oss.sink; +package org.apache.seatunnel.connectors.seatunnel.file.oss.jindo.sink; import org.apache.seatunnel.shade.com.typesafe.config.Config; @@ -26,9 +26,9 @@ import org.apache.seatunnel.common.config.CheckResult; import org.apache.seatunnel.common.constants.PluginType; import org.apache.seatunnel.connectors.seatunnel.file.config.FileSystemType; -import org.apache.seatunnel.connectors.seatunnel.file.oss.config.OssConf; -import org.apache.seatunnel.connectors.seatunnel.file.oss.config.OssConfigOptions; -import org.apache.seatunnel.connectors.seatunnel.file.oss.exception.OssJindoConnectorException; +import org.apache.seatunnel.connectors.seatunnel.file.oss.jindo.config.OssConf; +import org.apache.seatunnel.connectors.seatunnel.file.oss.jindo.config.OssConfigOptions; +import org.apache.seatunnel.connectors.seatunnel.file.oss.jindo.exception.OssJindoConnectorException; import org.apache.seatunnel.connectors.seatunnel.file.sink.BaseFileSink; import com.google.auto.service.AutoService; diff --git a/seatunnel-connectors-v2/connector-file/connector-file-jindo-oss/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/oss/sink/OssFileSinkFactory.java b/seatunnel-connectors-v2/connector-file/connector-file-jindo-oss/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/oss/jindo/sink/OssFileSinkFactory.java similarity index 96% rename from seatunnel-connectors-v2/connector-file/connector-file-jindo-oss/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/oss/sink/OssFileSinkFactory.java rename to seatunnel-connectors-v2/connector-file/connector-file-jindo-oss/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/oss/jindo/sink/OssFileSinkFactory.java index 60a426ccb90..b1bfb439e0b 100644 --- a/seatunnel-connectors-v2/connector-file/connector-file-jindo-oss/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/oss/sink/OssFileSinkFactory.java +++ b/seatunnel-connectors-v2/connector-file/connector-file-jindo-oss/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/oss/jindo/sink/OssFileSinkFactory.java @@ -15,7 +15,7 @@ * limitations under the License. */ -package org.apache.seatunnel.connectors.seatunnel.file.oss.sink; +package org.apache.seatunnel.connectors.seatunnel.file.oss.jindo.sink; import org.apache.seatunnel.api.configuration.util.OptionRule; import org.apache.seatunnel.api.table.factory.Factory; @@ -23,7 +23,7 @@ import org.apache.seatunnel.connectors.seatunnel.file.config.BaseSinkConfig; import org.apache.seatunnel.connectors.seatunnel.file.config.FileFormat; import org.apache.seatunnel.connectors.seatunnel.file.config.FileSystemType; -import org.apache.seatunnel.connectors.seatunnel.file.oss.config.OssConfigOptions; +import org.apache.seatunnel.connectors.seatunnel.file.oss.jindo.config.OssConfigOptions; import com.google.auto.service.AutoService; diff --git a/seatunnel-connectors-v2/connector-file/connector-file-jindo-oss/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/oss/source/OssFileSource.java b/seatunnel-connectors-v2/connector-file/connector-file-jindo-oss/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/oss/jindo/source/OssFileSource.java similarity index 94% rename from seatunnel-connectors-v2/connector-file/connector-file-jindo-oss/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/oss/source/OssFileSource.java rename to seatunnel-connectors-v2/connector-file/connector-file-jindo-oss/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/oss/jindo/source/OssFileSource.java index 7d73f16e7b6..6eea28eda34 100644 --- a/seatunnel-connectors-v2/connector-file/connector-file-jindo-oss/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/oss/source/OssFileSource.java +++ b/seatunnel-connectors-v2/connector-file/connector-file-jindo-oss/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/oss/jindo/source/OssFileSource.java @@ -15,7 +15,7 @@ * limitations under the License. */ -package org.apache.seatunnel.connectors.seatunnel.file.oss.source; +package org.apache.seatunnel.connectors.seatunnel.file.oss.jindo.source; import org.apache.seatunnel.shade.com.typesafe.config.Config; @@ -33,9 +33,9 @@ import org.apache.seatunnel.connectors.seatunnel.file.config.FileSystemType; import org.apache.seatunnel.connectors.seatunnel.file.exception.FileConnectorErrorCode; import org.apache.seatunnel.connectors.seatunnel.file.exception.FileConnectorException; -import org.apache.seatunnel.connectors.seatunnel.file.oss.config.OssConf; -import org.apache.seatunnel.connectors.seatunnel.file.oss.config.OssConfigOptions; -import org.apache.seatunnel.connectors.seatunnel.file.oss.exception.OssJindoConnectorException; +import org.apache.seatunnel.connectors.seatunnel.file.oss.jindo.config.OssConf; +import org.apache.seatunnel.connectors.seatunnel.file.oss.jindo.config.OssConfigOptions; +import org.apache.seatunnel.connectors.seatunnel.file.oss.jindo.exception.OssJindoConnectorException; import org.apache.seatunnel.connectors.seatunnel.file.source.BaseFileSource; import org.apache.seatunnel.connectors.seatunnel.file.source.reader.ReadStrategyFactory; diff --git a/seatunnel-connectors-v2/connector-file/connector-file-jindo-oss/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/oss/source/OssFileSourceFactory.java b/seatunnel-connectors-v2/connector-file/connector-file-jindo-oss/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/oss/jindo/source/OssFileSourceFactory.java similarity index 95% rename from seatunnel-connectors-v2/connector-file/connector-file-jindo-oss/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/oss/source/OssFileSourceFactory.java rename to seatunnel-connectors-v2/connector-file/connector-file-jindo-oss/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/oss/jindo/source/OssFileSourceFactory.java index 5a31832b33f..a6c9276c76e 100644 --- a/seatunnel-connectors-v2/connector-file/connector-file-jindo-oss/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/oss/source/OssFileSourceFactory.java +++ b/seatunnel-connectors-v2/connector-file/connector-file-jindo-oss/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/oss/jindo/source/OssFileSourceFactory.java @@ -15,7 +15,7 @@ * limitations under the License. */ -package org.apache.seatunnel.connectors.seatunnel.file.oss.source; +package org.apache.seatunnel.connectors.seatunnel.file.oss.jindo.source; import org.apache.seatunnel.api.configuration.util.OptionRule; import org.apache.seatunnel.api.source.SeaTunnelSource; @@ -25,7 +25,7 @@ import org.apache.seatunnel.connectors.seatunnel.file.config.BaseSourceConfigOptions; import org.apache.seatunnel.connectors.seatunnel.file.config.FileFormat; import org.apache.seatunnel.connectors.seatunnel.file.config.FileSystemType; -import org.apache.seatunnel.connectors.seatunnel.file.oss.config.OssConfigOptions; +import org.apache.seatunnel.connectors.seatunnel.file.oss.jindo.config.OssConfigOptions; import com.google.auto.service.AutoService; diff --git a/seatunnel-connectors-v2/connector-file/connector-file-jindo-oss/src/test/java/org/apache/seatunnel/connectors/test/OssJindoFactoryTest.java b/seatunnel-connectors-v2/connector-file/connector-file-jindo-oss/src/test/java/org/apache/seatunnel/connectors/test/OssJindoFactoryTest.java index 85955f086f9..c014f1d4923 100644 --- a/seatunnel-connectors-v2/connector-file/connector-file-jindo-oss/src/test/java/org/apache/seatunnel/connectors/test/OssJindoFactoryTest.java +++ b/seatunnel-connectors-v2/connector-file/connector-file-jindo-oss/src/test/java/org/apache/seatunnel/connectors/test/OssJindoFactoryTest.java @@ -17,8 +17,8 @@ package org.apache.seatunnel.connectors.test; -import org.apache.seatunnel.connectors.seatunnel.file.oss.sink.OssFileSinkFactory; -import org.apache.seatunnel.connectors.seatunnel.file.oss.source.OssFileSourceFactory; +import org.apache.seatunnel.connectors.seatunnel.file.oss.jindo.sink.OssFileSinkFactory; +import org.apache.seatunnel.connectors.seatunnel.file.oss.jindo.source.OssFileSourceFactory; import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Test; diff --git a/seatunnel-connectors-v2/connector-file/connector-file-oss/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/oss/sink/OssFileSink.java b/seatunnel-connectors-v2/connector-file/connector-file-oss/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/oss/sink/OssFileSink.java index 5cab55f8edd..de4726fd5ce 100644 --- a/seatunnel-connectors-v2/connector-file/connector-file-oss/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/oss/sink/OssFileSink.java +++ b/seatunnel-connectors-v2/connector-file/connector-file-oss/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/oss/sink/OssFileSink.java @@ -18,15 +18,11 @@ package org.apache.seatunnel.connectors.seatunnel.file.oss.sink; import org.apache.seatunnel.api.configuration.ReadonlyConfig; -import org.apache.seatunnel.api.sink.SeaTunnelSink; import org.apache.seatunnel.api.table.catalog.CatalogTable; import org.apache.seatunnel.connectors.seatunnel.file.config.FileSystemType; import org.apache.seatunnel.connectors.seatunnel.file.oss.config.OssHadoopConf; import org.apache.seatunnel.connectors.seatunnel.file.sink.BaseMultipleTableFileSink; -import com.google.auto.service.AutoService; - -@AutoService(SeaTunnelSink.class) public class OssFileSink extends BaseMultipleTableFileSink { public OssFileSink(ReadonlyConfig readonlyConfig, CatalogTable catalogTable) { super(OssHadoopConf.buildWithConfig(readonlyConfig), readonlyConfig, catalogTable); diff --git a/seatunnel-connectors-v2/connector-file/connector-file-s3/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/s3/sink/S3FileSink.java b/seatunnel-connectors-v2/connector-file/connector-file-s3/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/s3/sink/S3FileSink.java index 137d1991931..b7583569523 100644 --- a/seatunnel-connectors-v2/connector-file/connector-file-s3/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/s3/sink/S3FileSink.java +++ b/seatunnel-connectors-v2/connector-file/connector-file-s3/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/s3/sink/S3FileSink.java @@ -25,7 +25,6 @@ import org.apache.seatunnel.api.sink.DefaultSaveModeHandler; import org.apache.seatunnel.api.sink.SaveModeHandler; import org.apache.seatunnel.api.sink.SchemaSaveMode; -import org.apache.seatunnel.api.sink.SeaTunnelSink; import org.apache.seatunnel.api.sink.SupportSaveMode; import org.apache.seatunnel.api.table.catalog.Catalog; import org.apache.seatunnel.api.table.catalog.CatalogTable; @@ -39,13 +38,10 @@ import org.apache.seatunnel.connectors.seatunnel.file.s3.config.S3ConfigOptions; import org.apache.seatunnel.connectors.seatunnel.file.sink.BaseMultipleTableFileSink; -import com.google.auto.service.AutoService; - import java.util.Optional; import static org.apache.seatunnel.api.table.factory.FactoryUtil.discoverFactory; -@AutoService(SeaTunnelSink.class) public class S3FileSink extends BaseMultipleTableFileSink implements SupportSaveMode { private CatalogTable catalogTable; diff --git a/seatunnel-connectors-v2/connector-hudi/src/main/java/org/apache/seatunnel/connectors/seatunnel/hudi/source/HudiSourceFactory.java b/seatunnel-connectors-v2/connector-hudi/src/main/java/org/apache/seatunnel/connectors/seatunnel/hudi/source/HudiSourceFactory.java index 796645297be..778efc62a37 100644 --- a/seatunnel-connectors-v2/connector-hudi/src/main/java/org/apache/seatunnel/connectors/seatunnel/hudi/source/HudiSourceFactory.java +++ b/seatunnel-connectors-v2/connector-hudi/src/main/java/org/apache/seatunnel/connectors/seatunnel/hudi/source/HudiSourceFactory.java @@ -19,12 +19,13 @@ import org.apache.seatunnel.api.configuration.util.OptionRule; import org.apache.seatunnel.api.source.SeaTunnelSource; +import org.apache.seatunnel.api.table.factory.Factory; import org.apache.seatunnel.api.table.factory.TableSourceFactory; import org.apache.seatunnel.connectors.seatunnel.hudi.config.HudiSourceConfig; import com.google.auto.service.AutoService; -@AutoService(SeaTunnelSource.class) +@AutoService(Factory.class) public class HudiSourceFactory implements TableSourceFactory { @Override diff --git a/seatunnel-connectors-v2/connector-iceberg/src/main/java/org/apache/seatunnel/connectors/seatunnel/iceberg/sink/IcebergSink.java b/seatunnel-connectors-v2/connector-iceberg/src/main/java/org/apache/seatunnel/connectors/seatunnel/iceberg/sink/IcebergSink.java index 06131bc9f75..ad92aa1d75f 100644 --- a/seatunnel-connectors-v2/connector-iceberg/src/main/java/org/apache/seatunnel/connectors/seatunnel/iceberg/sink/IcebergSink.java +++ b/seatunnel-connectors-v2/connector-iceberg/src/main/java/org/apache/seatunnel/connectors/seatunnel/iceberg/sink/IcebergSink.java @@ -44,8 +44,6 @@ import org.apache.seatunnel.connectors.seatunnel.iceberg.sink.commit.IcebergCommitInfo; import org.apache.seatunnel.connectors.seatunnel.iceberg.sink.state.IcebergSinkState; -import com.google.auto.service.AutoService; - import java.io.IOException; import java.util.List; import java.util.Objects; @@ -54,7 +52,6 @@ import static org.apache.seatunnel.api.table.factory.FactoryUtil.discoverFactory; -@AutoService(SeaTunnelSink.class) public class IcebergSink implements SeaTunnelSink< SeaTunnelRow, diff --git a/seatunnel-connectors-v2/connector-iceberg/src/main/java/org/apache/seatunnel/connectors/seatunnel/iceberg/source/IcebergSource.java b/seatunnel-connectors-v2/connector-iceberg/src/main/java/org/apache/seatunnel/connectors/seatunnel/iceberg/source/IcebergSource.java index 3d1cde13a99..7a2fdf9d4ff 100644 --- a/seatunnel-connectors-v2/connector-iceberg/src/main/java/org/apache/seatunnel/connectors/seatunnel/iceberg/source/IcebergSource.java +++ b/seatunnel-connectors-v2/connector-iceberg/src/main/java/org/apache/seatunnel/connectors/seatunnel/iceberg/source/IcebergSource.java @@ -49,7 +49,6 @@ import org.apache.iceberg.Schema; import org.apache.iceberg.types.Types; -import com.google.auto.service.AutoService; import lombok.SneakyThrows; import java.util.ArrayList; @@ -58,7 +57,6 @@ import static org.apache.seatunnel.shade.com.google.common.base.Preconditions.checkArgument; -@AutoService(SeaTunnelSource.class) public class IcebergSource implements SeaTunnelSource< SeaTunnelRow, IcebergFileScanTaskSplit, IcebergSplitEnumeratorState>, diff --git a/seatunnel-connectors-v2/connector-starrocks/src/main/java/org/apache/seatunnel/connectors/seatunnel/starrocks/source/StarRocksSource.java b/seatunnel-connectors-v2/connector-starrocks/src/main/java/org/apache/seatunnel/connectors/seatunnel/starrocks/source/StarRocksSource.java index 9bde1b22a38..211a8b96fca 100644 --- a/seatunnel-connectors-v2/connector-starrocks/src/main/java/org/apache/seatunnel/connectors/seatunnel/starrocks/source/StarRocksSource.java +++ b/seatunnel-connectors-v2/connector-starrocks/src/main/java/org/apache/seatunnel/connectors/seatunnel/starrocks/source/StarRocksSource.java @@ -26,12 +26,9 @@ import org.apache.seatunnel.connectors.seatunnel.starrocks.config.CommonConfig; import org.apache.seatunnel.connectors.seatunnel.starrocks.config.SourceConfig; -import com.google.auto.service.AutoService; - import java.util.Collections; import java.util.List; -@AutoService(SeaTunnelSource.class) public class StarRocksSource implements SeaTunnelSource { diff --git a/seatunnel-dist/src/test/java/org/apache/seatunnel/api/connector/ConnectorSpecificationCheckTest.java b/seatunnel-dist/src/test/java/org/apache/seatunnel/api/connector/ConnectorSpecificationCheckTest.java index 243d2fc5a86..5b46d812012 100644 --- a/seatunnel-dist/src/test/java/org/apache/seatunnel/api/connector/ConnectorSpecificationCheckTest.java +++ b/seatunnel-dist/src/test/java/org/apache/seatunnel/api/connector/ConnectorSpecificationCheckTest.java @@ -17,6 +17,7 @@ package org.apache.seatunnel.api.connector; +import org.apache.seatunnel.api.sink.SeaTunnelSink; import org.apache.seatunnel.api.source.SeaTunnelSource; import org.apache.seatunnel.api.table.factory.FactoryUtil; import org.apache.seatunnel.api.table.factory.TableSinkFactory; @@ -33,14 +34,28 @@ import java.lang.reflect.Method; import java.util.ArrayList; +import java.util.HashMap; +import java.util.Iterator; import java.util.List; +import java.util.Map; import java.util.Optional; +import java.util.ServiceLoader; @Slf4j public class ConnectorSpecificationCheckTest { @Test public void testAllConnectorImplementFactoryWithUpToDateMethod() throws ClassNotFoundException { + + ServiceLoader sources = + ServiceLoader.load( + SeaTunnelSource.class, Thread.currentThread().getContextClassLoader()); + Map sourceWithSPI = new HashMap<>(); + Iterator sourceIterator = sources.iterator(); + while (sourceIterator.hasNext()) { + SeaTunnelSource source = sourceIterator.next(); + sourceWithSPI.put(source.getPluginName(), source.getClass().getName()); + } List sourceFactories = FactoryUtil.discoverFactories( Thread.currentThread().getContextClassLoader(), TableSourceFactory.class); @@ -57,6 +72,10 @@ public void testAllConnectorImplementFactoryWithUpToDateMethod() throws ClassNot TableSourceFactoryContext.class) .isPresent() && !blockList.contains(factory.getClass().getSimpleName())) { + Assertions.assertFalse( + sourceWithSPI.containsKey(factory.factoryIdentifier()), + "Please remove `@AutoService(SeaTunnelSource.class)` annotation in " + + sourceWithSPI.get(factory.factoryIdentifier())); Class sourceClass = factory.getSourceClass(); Optional prepare = ReflectionUtils.getDeclaredMethod(sourceClass, "prepare"); @@ -84,12 +103,25 @@ public void testAllConnectorImplementFactoryWithUpToDateMethod() throws ClassNot List sinkFactories = FactoryUtil.discoverFactories( Thread.currentThread().getContextClassLoader(), TableSinkFactory.class); + ServiceLoader sinks = + ServiceLoader.load( + SeaTunnelSink.class, Thread.currentThread().getContextClassLoader()); + Map sinkWithSPI = new HashMap<>(); + Iterator sinkIterator = sinks.iterator(); + while (sinkIterator.hasNext()) { + SeaTunnelSink sink = sinkIterator.next(); + sinkWithSPI.put(sink.getPluginName(), sink.getClass().getName()); + } for (TableSinkFactory factory : sinkFactories) { String factoryName = factory.getClass().getSimpleName(); if (ReflectionUtils.getDeclaredMethod( factory.getClass(), "createSink", TableSinkFactoryContext.class) .isPresent() && !blockList.contains(factoryName)) { + Assertions.assertFalse( + sinkWithSPI.containsKey(factory.factoryIdentifier()), + "Please remove `@AutoService(SeaTunnelSink.class)` annotation in " + + sinkWithSPI.get(factory.factoryIdentifier())); Class sinkClass = (Class) Class.forName(