1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 package org.apache.shardingsphere.data.pipeline.core.job.progress;
19
20 import lombok.Getter;
21 import lombok.RequiredArgsConstructor;
22 import lombok.Setter;
23 import lombok.ToString;
24 import org.apache.shardingsphere.data.pipeline.core.job.JobStatus;
25 import org.apache.shardingsphere.data.pipeline.core.consistencycheck.ConsistencyCheckJobItemProgressContext;
26
27 import java.util.Map;
28
29
30
31
32 @RequiredArgsConstructor
33 @Getter
34 @ToString
35
36 public final class ConsistencyCheckJobItemProgress implements PipelineJobItemProgress {
37
38 private final String tableNames;
39
40 private final String ignoredTableNames;
41
42 private final Long checkedRecordsCount;
43
44 private final Long recordsCount;
45
46 private final Long checkBeginTimeMillis;
47
48 private final Long checkEndTimeMillis;
49
50 private final Map<String, Object> sourceTableCheckPositions;
51
52 private final Map<String, Object> targetTableCheckPositions;
53
54 private final String sourceDatabaseType;
55
56 @Setter
57 private JobStatus status = JobStatus.RUNNING;
58
59 public ConsistencyCheckJobItemProgress(final ConsistencyCheckJobItemProgressContext context) {
60 tableNames = String.join(",", context.getTableNames());
61 ignoredTableNames = String.join(",", context.getIgnoredTableNames());
62 checkedRecordsCount = context.getCheckedRecordsCount().get();
63 recordsCount = context.getRecordsCount();
64 checkBeginTimeMillis = context.getCheckBeginTimeMillis();
65 checkEndTimeMillis = context.getCheckEndTimeMillis();
66 sourceTableCheckPositions = context.getSourceTableCheckPositions();
67 targetTableCheckPositions = context.getTargetTableCheckPositions();
68 sourceDatabaseType = context.getSourceDatabaseType();
69 }
70 }