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.consistencycheck.result.yaml;
19
20 import com.google.common.base.Strings;
21 import org.apache.shardingsphere.data.pipeline.core.consistencycheck.result.TableDataConsistencyCheckIgnoredType;
22 import org.apache.shardingsphere.data.pipeline.core.consistencycheck.result.TableDataConsistencyCheckResult;
23 import org.apache.shardingsphere.infra.util.yaml.YamlEngine;
24 import org.apache.shardingsphere.infra.util.yaml.swapper.YamlConfigurationSwapper;
25
26
27
28
29 public final class YamlTableDataConsistencyCheckResultSwapper implements YamlConfigurationSwapper<YamlTableDataConsistencyCheckResult, TableDataConsistencyCheckResult> {
30
31 @Override
32 public YamlTableDataConsistencyCheckResult swapToYamlConfiguration(final TableDataConsistencyCheckResult data) {
33 YamlTableDataConsistencyCheckResult result = new YamlTableDataConsistencyCheckResult();
34 if (data.isIgnored()) {
35 result.setIgnoredType(data.getIgnoredType().name());
36 return result;
37 }
38 result.setMatched(data.isMatched());
39 return result;
40 }
41
42 @Override
43 public TableDataConsistencyCheckResult swapToObject(final YamlTableDataConsistencyCheckResult yamlConfig) {
44 if (null == yamlConfig) {
45 return null;
46 }
47 if (!Strings.isNullOrEmpty(yamlConfig.getIgnoredType())) {
48 return new TableDataConsistencyCheckResult(TableDataConsistencyCheckIgnoredType.valueOf(yamlConfig.getIgnoredType()));
49 }
50 return new TableDataConsistencyCheckResult(yamlConfig.isMatched());
51 }
52
53
54
55
56
57
58
59 public TableDataConsistencyCheckResult swapToObject(final String param) {
60 return swapToObject(YamlEngine.unmarshal(param, YamlTableDataConsistencyCheckResult.class, true));
61 }
62 }