This is an automated email from the ASF dual-hosted git repository.
sunnianjun 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 42e0a5613a9 Refactor PipelineJobMetaData's fields to final (#21473)
42e0a5613a9 is described below
commit 42e0a5613a9a5300937c08a6bfc600a7878c8ac6
Author: Liang Zhang <[email protected]>
AuthorDate: Mon Oct 10 23:59:47 2022 +0800
Refactor PipelineJobMetaData's fields to final (#21473)
---
.../data/pipeline/api/pojo/PipelineJobMetaData.java | 12 +++++-------
.../data/pipeline/api/pojo/TableBasedPipelineJobInfo.java | 7 ++-----
.../pipeline/core/api/impl/AbstractPipelineJobAPIImpl.java | 13 ++-----------
.../pipeline/scenario/migration/MigrationJobAPIImpl.java | 7 ++++---
4 files changed, 13 insertions(+), 26 deletions(-)
diff --git
a/kernel/data-pipeline/api/src/main/java/org/apache/shardingsphere/data/pipeline/api/pojo/PipelineJobMetaData.java
b/kernel/data-pipeline/api/src/main/java/org/apache/shardingsphere/data/pipeline/api/pojo/PipelineJobMetaData.java
index 672b305294c..464d9d3333a 100644
---
a/kernel/data-pipeline/api/src/main/java/org/apache/shardingsphere/data/pipeline/api/pojo/PipelineJobMetaData.java
+++
b/kernel/data-pipeline/api/src/main/java/org/apache/shardingsphere/data/pipeline/api/pojo/PipelineJobMetaData.java
@@ -19,25 +19,23 @@ package org.apache.shardingsphere.data.pipeline.api.pojo;
import lombok.Getter;
import lombok.RequiredArgsConstructor;
-import lombok.Setter;
/**
* Pipeline job meta data.
*/
@RequiredArgsConstructor
@Getter
-@Setter
public final class PipelineJobMetaData {
private final String jobId;
- private boolean active;
+ private final boolean active;
- private int shardingTotalCount;
+ private final int shardingTotalCount;
- private String createTime;
+ private final String createTime;
- private String stopTime;
+ private final String stopTime;
- private transient String jobParameter;
+ private final transient String jobParameter;
}
diff --git
a/kernel/data-pipeline/api/src/main/java/org/apache/shardingsphere/data/pipeline/api/pojo/TableBasedPipelineJobInfo.java
b/kernel/data-pipeline/api/src/main/java/org/apache/shardingsphere/data/pipeline/api/pojo/TableBasedPipelineJobInfo.java
index 38e463461ac..e7102b9e74a 100644
---
a/kernel/data-pipeline/api/src/main/java/org/apache/shardingsphere/data/pipeline/api/pojo/TableBasedPipelineJobInfo.java
+++
b/kernel/data-pipeline/api/src/main/java/org/apache/shardingsphere/data/pipeline/api/pojo/TableBasedPipelineJobInfo.java
@@ -18,11 +18,13 @@
package org.apache.shardingsphere.data.pipeline.api.pojo;
import lombok.Getter;
+import lombok.RequiredArgsConstructor;
import lombok.ToString;
/**
* Table based pipeline job info.
*/
+@RequiredArgsConstructor
@Getter
@ToString(callSuper = true)
public final class TableBasedPipelineJobInfo implements PipelineJobInfo {
@@ -30,9 +32,4 @@ public final class TableBasedPipelineJobInfo implements
PipelineJobInfo {
private final PipelineJobMetaData jobMetaData;
private final String table;
-
- public TableBasedPipelineJobInfo(final String jobId, final String table) {
- jobMetaData = new PipelineJobMetaData(jobId);
- this.table = table;
- }
}
diff --git
a/kernel/data-pipeline/core/src/main/java/org/apache/shardingsphere/data/pipeline/core/api/impl/AbstractPipelineJobAPIImpl.java
b/kernel/data-pipeline/core/src/main/java/org/apache/shardingsphere/data/pipeline/core/api/impl/AbstractPipelineJobAPIImpl.java
index 6f21a3e8e73..f943ae5b661 100644
---
a/kernel/data-pipeline/core/src/main/java/org/apache/shardingsphere/data/pipeline/core/api/impl/AbstractPipelineJobAPIImpl.java
+++
b/kernel/data-pipeline/core/src/main/java/org/apache/shardingsphere/data/pipeline/core/api/impl/AbstractPipelineJobAPIImpl.java
@@ -24,7 +24,6 @@ import org.apache.commons.lang3.ObjectUtils;
import
org.apache.shardingsphere.data.pipeline.api.config.job.PipelineJobConfiguration;
import
org.apache.shardingsphere.data.pipeline.api.config.job.yaml.YamlPipelineJobConfiguration;
import org.apache.shardingsphere.data.pipeline.api.job.PipelineJobId;
-import org.apache.shardingsphere.data.pipeline.api.pojo.PipelineJobMetaData;
import org.apache.shardingsphere.data.pipeline.api.pojo.PipelineJobInfo;
import
org.apache.shardingsphere.data.pipeline.core.api.GovernanceRepositoryAPI;
import org.apache.shardingsphere.data.pipeline.core.api.PipelineAPIFactory;
@@ -86,18 +85,10 @@ public abstract class AbstractPipelineJobAPIImpl implements
PipelineJobAPI {
protected abstract PipelineJobInfo getJobInfo(String jobId);
- protected void fillJobMetaData(final PipelineJobMetaData jobMetaData,
final JobConfigurationPOJO jobConfigPOJO) {
- jobMetaData.setActive(!jobConfigPOJO.isDisabled());
-
jobMetaData.setShardingTotalCount(jobConfigPOJO.getShardingTotalCount());
-
jobMetaData.setCreateTime(jobConfigPOJO.getProps().getProperty("create_time"));
-
jobMetaData.setStopTime(jobConfigPOJO.getProps().getProperty("stop_time"));
- jobMetaData.setJobParameter(jobConfigPOJO.getJobParameter());
- }
-
@Override
public Optional<String> start(final PipelineJobConfiguration jobConfig) {
String jobId = jobConfig.getJobId();
- Preconditions.checkState(0 != jobConfig.getJobShardingCount(), new
PipelineJobCreationWithInvalidShardingCountException(jobId));
+ ShardingSpherePreconditions.checkState(0 !=
jobConfig.getJobShardingCount(), () -> new
PipelineJobCreationWithInvalidShardingCountException(jobId));
log.info("Start job by {}", jobConfig);
GovernanceRepositoryAPI repositoryAPI =
PipelineAPIFactory.getGovernanceRepositoryAPI();
String jobConfigKey = PipelineMetaDataNode.getJobConfigPath(jobId);
@@ -160,7 +151,7 @@ public abstract class AbstractPipelineJobAPIImpl implements
PipelineJobAPI {
protected final JobConfigurationPOJO getElasticJobConfigPOJO(final String
jobId) {
JobConfigurationPOJO result =
PipelineAPIFactory.getJobConfigurationAPI().getJobConfiguration(jobId);
- Preconditions.checkNotNull(result, new
PipelineJobNotFoundException(jobId));
+ ShardingSpherePreconditions.checkNotNull(result, () -> new
PipelineJobNotFoundException(jobId));
return result;
}
diff --git
a/kernel/data-pipeline/core/src/main/java/org/apache/shardingsphere/data/pipeline/scenario/migration/MigrationJobAPIImpl.java
b/kernel/data-pipeline/core/src/main/java/org/apache/shardingsphere/data/pipeline/scenario/migration/MigrationJobAPIImpl.java
index 89be8af7148..d73e6c07c47 100644
---
a/kernel/data-pipeline/core/src/main/java/org/apache/shardingsphere/data/pipeline/scenario/migration/MigrationJobAPIImpl.java
+++
b/kernel/data-pipeline/core/src/main/java/org/apache/shardingsphere/data/pipeline/scenario/migration/MigrationJobAPIImpl.java
@@ -48,6 +48,7 @@ import
org.apache.shardingsphere.data.pipeline.api.metadata.SchemaName;
import org.apache.shardingsphere.data.pipeline.api.metadata.SchemaTableName;
import org.apache.shardingsphere.data.pipeline.api.metadata.TableName;
import
org.apache.shardingsphere.data.pipeline.api.pojo.CreateMigrationJobParameter;
+import org.apache.shardingsphere.data.pipeline.api.pojo.PipelineJobMetaData;
import
org.apache.shardingsphere.data.pipeline.api.pojo.TableBasedPipelineJobInfo;
import org.apache.shardingsphere.data.pipeline.core.api.PipelineAPIFactory;
import
org.apache.shardingsphere.data.pipeline.core.api.impl.AbstractInventoryIncrementalJobAPIImpl;
@@ -125,9 +126,9 @@ public final class MigrationJobAPIImpl extends
AbstractInventoryIncrementalJobAP
@Override
protected TableBasedPipelineJobInfo getJobInfo(final String jobId) {
JobConfigurationPOJO jobConfigPOJO = getElasticJobConfigPOJO(jobId);
- TableBasedPipelineJobInfo result = new
TableBasedPipelineJobInfo(jobId,
getJobConfiguration(jobConfigPOJO).getSourceTableName());
- fillJobMetaData(result.getJobMetaData(), jobConfigPOJO);
- return result;
+ PipelineJobMetaData jobMetaData = new PipelineJobMetaData(jobId,
!jobConfigPOJO.isDisabled(),
+ jobConfigPOJO.getShardingTotalCount(),
jobConfigPOJO.getProps().getProperty("create_time"),
jobConfigPOJO.getProps().getProperty("stop_time"),
jobConfigPOJO.getJobParameter());
+ return new TableBasedPipelineJobInfo(jobMetaData,
getJobConfiguration(jobConfigPOJO).getSourceTableName());
}
@Override