This is an automated email from the ASF dual-hosted git repository.
zhonghongsheng pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/shardingsphere.git
The following commit(s) were added to refs/heads/master by this push:
new b878e7dbfdf Refactor AbstractImporter.getSchemaName (#19944)
b878e7dbfdf is described below
commit b878e7dbfdfa10cd621cb02735119f35dae30e4a
Author: Da Xiang Huang <[email protected]>
AuthorDate: Sun Aug 7 22:00:30 2022 +0800
Refactor AbstractImporter.getSchemaName (#19944)
---
.../data/pipeline/api/config/rulealtered/ImporterConfiguration.java | 4 +++-
.../data/pipeline/core/importer/AbstractImporter.java | 5 ++++-
.../shardingsphere/data/pipeline/mysql/importer/MySQLImporter.java | 5 -----
.../data/pipeline/opengauss/importer/OpenGaussImporter.java | 6 ------
.../data/pipeline/postgresql/importer/PostgreSQLImporter.java | 6 ------
.../data/pipeline/core/importer/AbstractImporterTest.java | 5 -----
6 files changed, 7 insertions(+), 24 deletions(-)
diff --git
a/shardingsphere-kernel/shardingsphere-data-pipeline/shardingsphere-data-pipeline-api/src/main/java/org/apache/shardingsphere/data/pipeline/api/config/rulealtered/ImporterConfiguration.java
b/shardingsphere-kernel/shardingsphere-data-pipeline/shardingsphere-data-pipeline-api/src/main/java/org/apache/shardingsphere/data/pipeline/api/config/rulealtered/ImporterConfiguration.java
index ee03e5d0c36..deea0fa6c9c 100644
---
a/shardingsphere-kernel/shardingsphere-data-pipeline/shardingsphere-data-pipeline-api/src/main/java/org/apache/shardingsphere/data/pipeline/api/config/rulealtered/ImporterConfiguration.java
+++
b/shardingsphere-kernel/shardingsphere-data-pipeline/shardingsphere-data-pipeline-api/src/main/java/org/apache/shardingsphere/data/pipeline/api/config/rulealtered/ImporterConfiguration.java
@@ -31,6 +31,7 @@ import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.stream.Collectors;
+import org.apache.shardingsphere.infra.database.type.DatabaseTypeFactory;
/**
* Importer configuration.
@@ -81,6 +82,7 @@ public final class ImporterConfiguration {
* @return schema name. nullable
*/
public String getSchemaName(final LogicTableName logicTableName) {
- return tableNameSchemaNameMapping.getSchemaName(logicTableName);
+ String databaseType = dataSourceConfig.getDatabaseType().getType();
+ return
DatabaseTypeFactory.getInstance(databaseType).isSchemaAvailable() ?
tableNameSchemaNameMapping.getSchemaName(logicTableName) : null;
}
}
diff --git
a/shardingsphere-kernel/shardingsphere-data-pipeline/shardingsphere-data-pipeline-core/src/main/java/org/apache/shardingsphere/data/pipeline/core/importer/AbstractImporter.java
b/shardingsphere-kernel/shardingsphere-data-pipeline/shardingsphere-data-pipeline-core/src/main/java/org/apache/shardingsphere/data/pipeline/core/importer/AbstractImporter.java
index f0e3081376d..dbfb221d2eb 100644
---
a/shardingsphere-kernel/shardingsphere-data-pipeline/shardingsphere-data-pipeline-core/src/main/java/org/apache/shardingsphere/data/pipeline/core/importer/AbstractImporter.java
+++
b/shardingsphere-kernel/shardingsphere-data-pipeline/shardingsphere-data-pipeline-core/src/main/java/org/apache/shardingsphere/data/pipeline/core/importer/AbstractImporter.java
@@ -29,6 +29,7 @@ import
org.apache.shardingsphere.data.pipeline.api.ingest.record.FinishedRecord;
import
org.apache.shardingsphere.data.pipeline.api.ingest.record.GroupedDataRecord;
import org.apache.shardingsphere.data.pipeline.api.ingest.record.Record;
import
org.apache.shardingsphere.data.pipeline.api.job.progress.listener.PipelineJobProgressListener;
+import org.apache.shardingsphere.data.pipeline.api.metadata.LogicTableName;
import
org.apache.shardingsphere.data.pipeline.core.datasource.PipelineDataSourceManager;
import
org.apache.shardingsphere.data.pipeline.core.exception.PipelineJobExecutionException;
import
org.apache.shardingsphere.data.pipeline.core.ingest.IngestDataChangeType;
@@ -173,7 +174,9 @@ public abstract class AbstractImporter extends
AbstractLifecycleExecutor impleme
}
}
- protected abstract String getSchemaName(String logicTableName);
+ private String getSchemaName(final String logicTableName) {
+ return getImporterConfig().getSchemaName(new
LogicTableName(logicTableName));
+ }
private void executeUpdate(final Connection connection, final
List<DataRecord> dataRecords) throws SQLException {
for (DataRecord each : dataRecords) {
diff --git
a/shardingsphere-kernel/shardingsphere-data-pipeline/shardingsphere-data-pipeline-dialect/shardingsphere-data-pipeline-mysql/src/main/java/org/apache/shardingsphere/data/pipeline/mysql/importer/MySQLImporter.java
b/shardingsphere-kernel/shardingsphere-data-pipeline/shardingsphere-data-pipeline-dialect/shardingsphere-data-pipeline-mysql/src/main/java/org/apache/shardingsphere/data/pipeline/mysql/importer/MySQLImporter.java
index 09af98ea2fe..773786ab0e9 100644
---
a/shardingsphere-kernel/shardingsphere-data-pipeline/shardingsphere-data-pipeline-dialect/shardingsphere-data-pipeline-mysql/src/main/java/org/apache/shardingsphere/data/pipeline/mysql/importer/MySQLImporter.java
+++
b/shardingsphere-kernel/shardingsphere-data-pipeline/shardingsphere-data-pipeline-dialect/shardingsphere-data-pipeline-mysql/src/main/java/org/apache/shardingsphere/data/pipeline/mysql/importer/MySQLImporter.java
@@ -32,9 +32,4 @@ public final class MySQLImporter extends AbstractImporter {
final PipelineJobProgressListener
jobProgressListener) {
super(importerConfig, dataSourceManager, channel, jobProgressListener);
}
-
- @Override
- protected String getSchemaName(final String logicTableName) {
- return null;
- }
}
diff --git
a/shardingsphere-kernel/shardingsphere-data-pipeline/shardingsphere-data-pipeline-dialect/shardingsphere-data-pipeline-opengauss/src/main/java/org/apache/shardingsphere/data/pipeline/opengauss/importer/OpenGaussImporter.java
b/shardingsphere-kernel/shardingsphere-data-pipeline/shardingsphere-data-pipeline-dialect/shardingsphere-data-pipeline-opengauss/src/main/java/org/apache/shardingsphere/data/pipeline/opengauss/importer/OpenGaussImporter.java
index 831c3510b32..3fb304ee247 100644
---
a/shardingsphere-kernel/shardingsphere-data-pipeline/shardingsphere-data-pipeline-dialect/shardingsphere-data-pipeline-opengauss/src/main/java/org/apache/shardingsphere/data/pipeline/opengauss/importer/OpenGaussImporter.java
+++
b/shardingsphere-kernel/shardingsphere-data-pipeline/shardingsphere-data-pipeline-dialect/shardingsphere-data-pipeline-opengauss/src/main/java/org/apache/shardingsphere/data/pipeline/opengauss/importer/OpenGaussImporter.java
@@ -20,7 +20,6 @@ package
org.apache.shardingsphere.data.pipeline.opengauss.importer;
import
org.apache.shardingsphere.data.pipeline.api.config.rulealtered.ImporterConfiguration;
import
org.apache.shardingsphere.data.pipeline.api.ingest.channel.PipelineChannel;
import
org.apache.shardingsphere.data.pipeline.api.job.progress.listener.PipelineJobProgressListener;
-import org.apache.shardingsphere.data.pipeline.api.metadata.LogicTableName;
import
org.apache.shardingsphere.data.pipeline.core.datasource.PipelineDataSourceManager;
import org.apache.shardingsphere.data.pipeline.core.importer.AbstractImporter;
@@ -33,9 +32,4 @@ public final class OpenGaussImporter extends AbstractImporter
{
final PipelineJobProgressListener
jobProgressListener) {
super(importerConfig, dataSourceManager, channel, jobProgressListener);
}
-
- @Override
- protected String getSchemaName(final String logicTableName) {
- return getImporterConfig().getSchemaName(new
LogicTableName(logicTableName));
- }
}
diff --git
a/shardingsphere-kernel/shardingsphere-data-pipeline/shardingsphere-data-pipeline-dialect/shardingsphere-data-pipeline-postgresql/src/main/java/org/apache/shardingsphere/data/pipeline/postgresql/importer/PostgreSQLImporter.java
b/shardingsphere-kernel/shardingsphere-data-pipeline/shardingsphere-data-pipeline-dialect/shardingsphere-data-pipeline-postgresql/src/main/java/org/apache/shardingsphere/data/pipeline/postgresql/importer/PostgreSQLImporter.java
index 571915d5c16..ff63036612b 100644
---
a/shardingsphere-kernel/shardingsphere-data-pipeline/shardingsphere-data-pipeline-dialect/shardingsphere-data-pipeline-postgresql/src/main/java/org/apache/shardingsphere/data/pipeline/postgresql/importer/PostgreSQLImporter.java
+++
b/shardingsphere-kernel/shardingsphere-data-pipeline/shardingsphere-data-pipeline-dialect/shardingsphere-data-pipeline-postgresql/src/main/java/org/apache/shardingsphere/data/pipeline/postgresql/importer/PostgreSQLImporter.java
@@ -20,7 +20,6 @@ package
org.apache.shardingsphere.data.pipeline.postgresql.importer;
import
org.apache.shardingsphere.data.pipeline.api.config.rulealtered.ImporterConfiguration;
import
org.apache.shardingsphere.data.pipeline.api.ingest.channel.PipelineChannel;
import
org.apache.shardingsphere.data.pipeline.api.job.progress.listener.PipelineJobProgressListener;
-import org.apache.shardingsphere.data.pipeline.api.metadata.LogicTableName;
import
org.apache.shardingsphere.data.pipeline.core.datasource.PipelineDataSourceManager;
import org.apache.shardingsphere.data.pipeline.core.importer.AbstractImporter;
@@ -33,9 +32,4 @@ public final class PostgreSQLImporter extends
AbstractImporter {
final PipelineJobProgressListener
jobProgressListener) {
super(importerConfig, dataSourceManager, channel, jobProgressListener);
}
-
- @Override
- protected String getSchemaName(final String logicTableName) {
- return getImporterConfig().getSchemaName(new
LogicTableName(logicTableName));
- }
}
diff --git
a/shardingsphere-test/shardingsphere-pipeline-test/src/test/java/org/apache/shardingsphere/data/pipeline/core/importer/AbstractImporterTest.java
b/shardingsphere-test/shardingsphere-pipeline-test/src/test/java/org/apache/shardingsphere/data/pipeline/core/importer/AbstractImporterTest.java
index 92d5a4632b1..ff0b7280b7d 100644
---
a/shardingsphere-test/shardingsphere-pipeline-test/src/test/java/org/apache/shardingsphere/data/pipeline/core/importer/AbstractImporterTest.java
+++
b/shardingsphere-test/shardingsphere-pipeline-test/src/test/java/org/apache/shardingsphere/data/pipeline/core/importer/AbstractImporterTest.java
@@ -83,11 +83,6 @@ public final class AbstractImporterTest {
@Before
public void setUp() throws SQLException {
jdbcImporter = new AbstractImporter(mockImporterConfiguration(),
dataSourceManager, channel, new FixturePipelineJobProgressListener()) {
-
- @Override
- protected String getSchemaName(final String logicTableName) {
- return null;
- }
};
when(dataSourceManager.getDataSource(dataSourceConfig)).thenReturn(dataSource);
when(dataSource.getConnection()).thenReturn(connection);