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.ingest.dumper.inventory;
19
20 import lombok.Getter;
21 import lombok.Setter;
22 import lombok.ToString;
23 import org.apache.shardingsphere.data.pipeline.core.ingest.dumper.DumperCommonContext;
24 import org.apache.shardingsphere.data.pipeline.core.metadata.model.PipelineColumnMetaData;
25 import org.apache.shardingsphere.data.pipeline.core.ratelimit.JobRateLimitAlgorithm;
26
27 import java.util.List;
28
29
30
31
32 @Getter
33 @Setter
34 @ToString
35 public final class InventoryDumperContext {
36
37 private final DumperCommonContext commonContext;
38
39 private String actualTableName;
40
41 private String logicTableName;
42
43 private List<PipelineColumnMetaData> uniqueKeyColumns;
44
45 private List<String> insertColumnNames;
46
47 private String querySQL;
48
49 private Integer transactionIsolation;
50
51 private int shardingItem;
52
53 private int batchSize = 1000;
54
55 private JobRateLimitAlgorithm rateLimitAlgorithm;
56
57 public InventoryDumperContext(final DumperCommonContext commonContext) {
58 this.commonContext = new DumperCommonContext(
59 commonContext.getDataSourceName(), commonContext.getDataSourceConfig(), commonContext.getTableNameMapper(), commonContext.getTableAndSchemaNameMapper());
60 }
61
62
63
64
65
66
67 public boolean hasUniqueKey() {
68 return null != uniqueKeyColumns && !uniqueKeyColumns.isEmpty();
69 }
70 }