You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@shardingsphere.apache.org by zh...@apache.org on 2023/06/02 08:08:36 UTC
[shardingsphere] branch master updated: Move rule node converters to feature module (#26008)
This is an automated email from the ASF dual-hosted git repository.
zhaojinchao 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 14f17ec2cd8 Move rule node converters to feature module (#26008)
14f17ec2cd8 is described below
commit 14f17ec2cd89ce5846c91de4b827c43573048c79
Author: ChenJiaHao <Pa...@163.com>
AuthorDate: Fri Jun 2 16:08:25 2023 +0800
Move rule node converters to feature module (#26008)
* Move rule node converters to feature module
* Update related test cases
---
features/encrypt/core/pom.xml | 5 ----
.../metadata/converter}/EncryptNodeConverter.java | 3 +--
.../NewYamlEncryptRuleConfigurationSwapper.java | 2 +-
features/mask/core/pom.xml | 5 ----
.../metadata/converter}/MaskNodeConverter.java | 3 +--
.../NewYamlMaskRuleConfigurationSwapper.java | 2 +-
...writeSplittingRuleConfigurationSwapperTest.java | 6 ++---
features/shadow/core/pom.xml | 5 ----
.../metadata/converter}/ShadowNodeConverter.java | 11 ++++-----
.../NewYamlShadowRuleConfigurationSwapper.java | 2 +-
.../metadata/converter}/ShardingNodeConverter.java | 28 +++++++++++-----------
.../NewYamlShardingRuleConfigurationSwapper.java | 10 ++++----
.../ReadwriteSplittingNodeConverter.java | 10 ++++----
13 files changed, 38 insertions(+), 54 deletions(-)
diff --git a/features/encrypt/core/pom.xml b/features/encrypt/core/pom.xml
index d6367d6e57d..8904d2683b0 100644
--- a/features/encrypt/core/pom.xml
+++ b/features/encrypt/core/pom.xml
@@ -68,11 +68,6 @@
<version>${project.version}</version>
<scope>test</scope>
</dependency>
- <dependency>
- <groupId>org.apache.shardingsphere</groupId>
- <artifactId>shardingsphere-metadata-core</artifactId>
- <version>${project.version}</version>
- </dependency>
<dependency>
<groupId>commons-codec</groupId>
diff --git a/kernel/metadata/core/src/main/java/org/apache/shardingsphere/metadata/persist/node/metadata/config/encrypt/EncryptNodeConverter.java b/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/metadata/converter/EncryptNodeConverter.java
similarity index 93%
rename from kernel/metadata/core/src/main/java/org/apache/shardingsphere/metadata/persist/node/metadata/config/encrypt/EncryptNodeConverter.java
rename to features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/metadata/converter/EncryptNodeConverter.java
index 8c5df783d06..17b19eb4357 100644
--- a/kernel/metadata/core/src/main/java/org/apache/shardingsphere/metadata/persist/node/metadata/config/encrypt/EncryptNodeConverter.java
+++ b/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/metadata/converter/EncryptNodeConverter.java
@@ -15,13 +15,12 @@
* limitations under the License.
*/
-package org.apache.shardingsphere.metadata.persist.node.metadata.config.encrypt;
+package org.apache.shardingsphere.encrypt.metadata.converter;
import lombok.AccessLevel;
import lombok.NoArgsConstructor;
/**
- * TODO move to features module
* Encrypt node converter.
*/
@NoArgsConstructor(access = AccessLevel.PRIVATE)
diff --git a/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/yaml/swapper/NewYamlEncryptRuleConfigurationSwapper.java b/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/yaml/swapper/NewYamlEncryptRuleConfigurationSwapper.java
index b2022d17357..92e6cccc4e4 100644
--- a/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/yaml/swapper/NewYamlEncryptRuleConfigurationSwapper.java
+++ b/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/yaml/swapper/NewYamlEncryptRuleConfigurationSwapper.java
@@ -26,7 +26,7 @@ import org.apache.shardingsphere.infra.util.yaml.YamlEngine;
import org.apache.shardingsphere.infra.util.yaml.datanode.YamlDataNode;
import org.apache.shardingsphere.infra.yaml.config.swapper.algorithm.YamlAlgorithmConfigurationSwapper;
import org.apache.shardingsphere.infra.yaml.config.swapper.rule.NewYamlRuleConfigurationSwapper;
-import org.apache.shardingsphere.metadata.persist.node.metadata.config.encrypt.EncryptNodeConverter;
+import org.apache.shardingsphere.encrypt.metadata.converter.EncryptNodeConverter;
import java.util.Collection;
import java.util.Collections;
diff --git a/features/mask/core/pom.xml b/features/mask/core/pom.xml
index c96cb8a2f63..f863a2f057f 100644
--- a/features/mask/core/pom.xml
+++ b/features/mask/core/pom.xml
@@ -38,11 +38,6 @@
<artifactId>shardingsphere-infra-merge</artifactId>
<version>${project.version}</version>
</dependency>
- <dependency>
- <groupId>org.apache.shardingsphere</groupId>
- <artifactId>shardingsphere-metadata-core</artifactId>
- <version>${project.version}</version>
- </dependency>
<dependency>
<groupId>org.apache.shardingsphere</groupId>
diff --git a/kernel/metadata/core/src/main/java/org/apache/shardingsphere/metadata/persist/node/metadata/config/mask/MaskNodeConverter.java b/features/mask/core/src/main/java/org/apache/shardingsphere/mask/metadata/converter/MaskNodeConverter.java
similarity index 93%
rename from kernel/metadata/core/src/main/java/org/apache/shardingsphere/metadata/persist/node/metadata/config/mask/MaskNodeConverter.java
rename to features/mask/core/src/main/java/org/apache/shardingsphere/mask/metadata/converter/MaskNodeConverter.java
index a2f35adbde1..aee2eaac42f 100644
--- a/kernel/metadata/core/src/main/java/org/apache/shardingsphere/metadata/persist/node/metadata/config/mask/MaskNodeConverter.java
+++ b/features/mask/core/src/main/java/org/apache/shardingsphere/mask/metadata/converter/MaskNodeConverter.java
@@ -15,13 +15,12 @@
* limitations under the License.
*/
-package org.apache.shardingsphere.metadata.persist.node.metadata.config.mask;
+package org.apache.shardingsphere.mask.metadata.converter;
import lombok.AccessLevel;
import lombok.NoArgsConstructor;
/**
- * TODO move to features module
* Mask node converter.
*/
@NoArgsConstructor(access = AccessLevel.PRIVATE)
diff --git a/features/mask/core/src/main/java/org/apache/shardingsphere/mask/yaml/swapper/NewYamlMaskRuleConfigurationSwapper.java b/features/mask/core/src/main/java/org/apache/shardingsphere/mask/yaml/swapper/NewYamlMaskRuleConfigurationSwapper.java
index 90b2638d5ff..7b813c94ddf 100644
--- a/features/mask/core/src/main/java/org/apache/shardingsphere/mask/yaml/swapper/NewYamlMaskRuleConfigurationSwapper.java
+++ b/features/mask/core/src/main/java/org/apache/shardingsphere/mask/yaml/swapper/NewYamlMaskRuleConfigurationSwapper.java
@@ -26,7 +26,7 @@ import org.apache.shardingsphere.mask.api.config.MaskRuleConfiguration;
import org.apache.shardingsphere.mask.api.config.rule.MaskTableRuleConfiguration;
import org.apache.shardingsphere.mask.constant.MaskOrder;
import org.apache.shardingsphere.mask.yaml.swapper.rule.YamlMaskTableRuleConfigurationSwapper;
-import org.apache.shardingsphere.metadata.persist.node.metadata.config.mask.MaskNodeConverter;
+import org.apache.shardingsphere.mask.metadata.converter.MaskNodeConverter;
import java.util.Collection;
import java.util.Collections;
diff --git a/features/readwrite-splitting/core/src/test/java/org/apache/shardingsphere/readwritesplitting/yaml/swapper/NewYamlReadwriteSplittingRuleConfigurationSwapperTest.java b/features/readwrite-splitting/core/src/test/java/org/apache/shardingsphere/readwritesplitting/yaml/swapper/NewYamlReadwriteSplittingRuleConfigurationSwapperTest.java
index c8156c806db..1e2ea03f32e 100644
--- a/features/readwrite-splitting/core/src/test/java/org/apache/shardingsphere/readwritesplitting/yaml/swapper/NewYamlReadwriteSplittingRuleConfigurationSwapperTest.java
+++ b/features/readwrite-splitting/core/src/test/java/org/apache/shardingsphere/readwritesplitting/yaml/swapper/NewYamlReadwriteSplittingRuleConfigurationSwapperTest.java
@@ -42,7 +42,7 @@ class NewYamlReadwriteSplittingRuleConfigurationSwapperTest {
"write_ds", Arrays.asList("read_ds_0", "read_ds_1"), null)), Collections.emptyMap());
Collection<YamlDataNode> result = swapper.swapToDataNodes(config);
assertThat(result.size(), is(1));
- assertThat(result.iterator().next().getKey(), is("/group_0"));
+ assertThat(result.iterator().next().getKey(), is("data_sources/group_0"));
}
@Test
@@ -52,7 +52,7 @@ class NewYamlReadwriteSplittingRuleConfigurationSwapperTest {
Collection<YamlDataNode> result = swapper.swapToDataNodes(config);
assertThat(result.size(), is(2));
Iterator<YamlDataNode> iterator = result.iterator();
- assertThat(iterator.next().getKey(), is("/group_0"));
- assertThat(iterator.next().getKey(), is("/load_balancers/random"));
+ assertThat(iterator.next().getKey(), is("data_sources/group_0"));
+ assertThat(iterator.next().getKey(), is("load_balancers/random"));
}
}
diff --git a/features/shadow/core/pom.xml b/features/shadow/core/pom.xml
index 5346cfd198b..350042f9fb9 100644
--- a/features/shadow/core/pom.xml
+++ b/features/shadow/core/pom.xml
@@ -49,11 +49,6 @@
<artifactId>shardingsphere-infra-rewrite</artifactId>
<version>${project.version}</version>
</dependency>
- <dependency>
- <groupId>org.apache.shardingsphere</groupId>
- <artifactId>shardingsphere-metadata-core</artifactId>
- <version>${project.version}</version>
- </dependency>
<dependency>
<groupId>org.apache.shardingsphere</groupId>
diff --git a/kernel/metadata/core/src/main/java/org/apache/shardingsphere/metadata/persist/node/metadata/config/shadow/ShadowNodeConverter.java b/features/shadow/core/src/main/java/org/apache/shardingsphere/shadow/metadata/converter/ShadowNodeConverter.java
similarity index 93%
rename from kernel/metadata/core/src/main/java/org/apache/shardingsphere/metadata/persist/node/metadata/config/shadow/ShadowNodeConverter.java
rename to features/shadow/core/src/main/java/org/apache/shardingsphere/shadow/metadata/converter/ShadowNodeConverter.java
index d585dffc9cc..e7f3f8e3f36 100644
--- a/kernel/metadata/core/src/main/java/org/apache/shardingsphere/metadata/persist/node/metadata/config/shadow/ShadowNodeConverter.java
+++ b/features/shadow/core/src/main/java/org/apache/shardingsphere/shadow/metadata/converter/ShadowNodeConverter.java
@@ -15,14 +15,13 @@
* limitations under the License.
*/
-package org.apache.shardingsphere.metadata.persist.node.metadata.config.shadow;
+package org.apache.shardingsphere.shadow.metadata.converter;
import lombok.AccessLevel;
import lombok.NoArgsConstructor;
/**
- * TODO move to feature
- * Sharding node converter.
+ * Shadow node converter.
*/
@NoArgsConstructor(access = AccessLevel.PRIVATE)
public final class ShadowNodeConverter {
@@ -37,7 +36,7 @@ public final class ShadowNodeConverter {
/**
* Get data source path.
- *
+ *
* @param dataSourceName data source name
* @return data source path
*/
@@ -57,7 +56,7 @@ public final class ShadowNodeConverter {
/**
* Get shadow algorithm path.
- *
+ *
* @param shadowAlgorithmName shadow algorithm name
* @return shadow algorithm path
*/
@@ -67,7 +66,7 @@ public final class ShadowNodeConverter {
/**
* Get default shadow algorithm path.
- *
+ *
* @return default shadow algorithm path
*/
public static String getDefaultShadowAlgorithmPath() {
diff --git a/features/shadow/core/src/main/java/org/apache/shardingsphere/shadow/yaml/swapper/NewYamlShadowRuleConfigurationSwapper.java b/features/shadow/core/src/main/java/org/apache/shardingsphere/shadow/yaml/swapper/NewYamlShadowRuleConfigurationSwapper.java
index 4ff2a107e84..0e2bac362f6 100644
--- a/features/shadow/core/src/main/java/org/apache/shardingsphere/shadow/yaml/swapper/NewYamlShadowRuleConfigurationSwapper.java
+++ b/features/shadow/core/src/main/java/org/apache/shardingsphere/shadow/yaml/swapper/NewYamlShadowRuleConfigurationSwapper.java
@@ -23,7 +23,7 @@ import org.apache.shardingsphere.infra.util.yaml.YamlEngine;
import org.apache.shardingsphere.infra.util.yaml.datanode.YamlDataNode;
import org.apache.shardingsphere.infra.yaml.config.swapper.algorithm.YamlAlgorithmConfigurationSwapper;
import org.apache.shardingsphere.infra.yaml.config.swapper.rule.NewYamlRuleConfigurationSwapper;
-import org.apache.shardingsphere.metadata.persist.node.metadata.config.shadow.ShadowNodeConverter;
+import org.apache.shardingsphere.shadow.metadata.converter.ShadowNodeConverter;
import org.apache.shardingsphere.shadow.api.config.ShadowRuleConfiguration;
import org.apache.shardingsphere.shadow.api.config.datasource.ShadowDataSourceConfiguration;
import org.apache.shardingsphere.shadow.api.config.table.ShadowTableConfiguration;
diff --git a/kernel/metadata/core/src/main/java/org/apache/shardingsphere/metadata/persist/node/metadata/config/sharding/ShardingNodeConverter.java b/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/metadata/converter/ShardingNodeConverter.java
similarity index 90%
rename from kernel/metadata/core/src/main/java/org/apache/shardingsphere/metadata/persist/node/metadata/config/sharding/ShardingNodeConverter.java
rename to features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/metadata/converter/ShardingNodeConverter.java
index 3d2ffc255d7..cef7fc8a9ec 100644
--- a/kernel/metadata/core/src/main/java/org/apache/shardingsphere/metadata/persist/node/metadata/config/sharding/ShardingNodeConverter.java
+++ b/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/metadata/converter/ShardingNodeConverter.java
@@ -15,7 +15,7 @@
* limitations under the License.
*/
-package org.apache.shardingsphere.metadata.persist.node.metadata.config.sharding;
+package org.apache.shardingsphere.sharding.metadata.converter;
/**
* Sharding node converter.
@@ -141,38 +141,38 @@ public final class ShardingNodeConverter {
}
/**
- * Get sharding algorithm name path.
- *
+ * Get sharding algorithm path.
+ *
* @param shardingAlgorithmName sharding algorithm name
- * @return sharding algorithm name path
+ * @return sharding algorithm path
*/
- public String getShardingAlgorithmsPath(final String shardingAlgorithmName) {
+ public String getShardingAlgorithmPath(final String shardingAlgorithmName) {
return String.join("/", SHARDING_ALGORITHMS, shardingAlgorithmName);
}
/**
- * Get key generator name path.
- *
+ * Get key generator path.
+ *
* @param keyGeneratorName key generator name
- * @return key generator name path
+ * @return key generator path
*/
- public String getKeyGeneratorsPath(final String keyGeneratorName) {
+ public String getKeyGeneratorPath(final String keyGeneratorName) {
return String.join("/", KEY_GENERATORS, keyGeneratorName);
}
/**
- * Get auditor name path.
- *
+ * Get auditor path.
+ *
* @param auditorName auditor name
- * @return auditor name path
+ * @return auditor path
*/
- public String getAuditorsPath(final String auditorName) {
+ public String getAuditorPath(final String auditorName) {
return String.join("/", AUDITORS, auditorName);
}
/**
* Get sharding cache path.
- *
+ *
* @return sharding cache path
*/
public String getShardingCachePath() {
diff --git a/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/yaml/swapper/NewYamlShardingRuleConfigurationSwapper.java b/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/yaml/swapper/NewYamlShardingRuleConfigurationSwapper.java
index ad6700fea29..a35318d03e9 100644
--- a/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/yaml/swapper/NewYamlShardingRuleConfigurationSwapper.java
+++ b/features/sharding/core/src/main/java/org/apache/shardingsphere/sharding/yaml/swapper/NewYamlShardingRuleConfigurationSwapper.java
@@ -22,7 +22,7 @@ import org.apache.shardingsphere.infra.util.yaml.YamlEngine;
import org.apache.shardingsphere.infra.util.yaml.datanode.YamlDataNode;
import org.apache.shardingsphere.infra.yaml.config.swapper.algorithm.YamlAlgorithmConfigurationSwapper;
import org.apache.shardingsphere.infra.yaml.config.swapper.rule.NewYamlRuleConfigurationSwapper;
-import org.apache.shardingsphere.metadata.persist.node.metadata.config.sharding.ShardingNodeConverter;
+import org.apache.shardingsphere.sharding.metadata.converter.ShardingNodeConverter;
import org.apache.shardingsphere.sharding.api.config.ShardingRuleConfiguration;
import org.apache.shardingsphere.sharding.api.config.rule.ShardingAutoTableRuleConfiguration;
import org.apache.shardingsphere.sharding.api.config.rule.ShardingTableReferenceRuleConfiguration;
@@ -40,7 +40,7 @@ import java.util.LinkedHashSet;
import java.util.Map.Entry;
/**
- * TODO Rename to NewYamlShardingRuleConfigurationSwapper when metadata structure adjustment completed. #25485
+ * TODO Rename to YamlShardingRuleConfigurationSwapper when metadata structure adjustment completed. #25485
* New YAML sharding rule configuration swapper.
*/
public final class NewYamlShardingRuleConfigurationSwapper implements NewYamlRuleConfigurationSwapper<ShardingRuleConfiguration> {
@@ -109,13 +109,13 @@ public final class NewYamlShardingRuleConfigurationSwapper implements NewYamlRul
private void swapAlgorithms(final ShardingRuleConfiguration data, final Collection<YamlDataNode> result) {
for (Entry<String, AlgorithmConfiguration> each : data.getShardingAlgorithms().entrySet()) {
- result.add(new YamlDataNode(converter.getShardingAlgorithmsPath(each.getKey()), YamlEngine.marshal(each.getValue())));
+ result.add(new YamlDataNode(converter.getShardingAlgorithmPath(each.getKey()), YamlEngine.marshal(each.getValue())));
}
for (Entry<String, AlgorithmConfiguration> each : data.getKeyGenerators().entrySet()) {
- result.add(new YamlDataNode(converter.getKeyGeneratorsPath(each.getKey()), YamlEngine.marshal(each.getValue())));
+ result.add(new YamlDataNode(converter.getKeyGeneratorPath(each.getKey()), YamlEngine.marshal(each.getValue())));
}
for (Entry<String, AlgorithmConfiguration> each : data.getAuditors().entrySet()) {
- result.add(new YamlDataNode(converter.getAuditorsPath(each.getKey()), YamlEngine.marshal(each.getValue())));
+ result.add(new YamlDataNode(converter.getAuditorPath(each.getKey()), YamlEngine.marshal(each.getValue())));
}
}
diff --git a/kernel/metadata/core/src/main/java/org/apache/shardingsphere/metadata/persist/node/metadata/config/readwritesplitting/ReadwriteSplittingNodeConverter.java b/kernel/metadata/core/src/main/java/org/apache/shardingsphere/metadata/persist/node/metadata/config/readwritesplitting/ReadwriteSplittingNodeConverter.java
index cc08d858b4e..68fe724d280 100644
--- a/kernel/metadata/core/src/main/java/org/apache/shardingsphere/metadata/persist/node/metadata/config/readwritesplitting/ReadwriteSplittingNodeConverter.java
+++ b/kernel/metadata/core/src/main/java/org/apache/shardingsphere/metadata/persist/node/metadata/config/readwritesplitting/ReadwriteSplittingNodeConverter.java
@@ -22,25 +22,27 @@ package org.apache.shardingsphere.metadata.persist.node.metadata.config.readwrit
*/
public final class ReadwriteSplittingNodeConverter {
+ private static final String DATA_SOURCES = "data_sources";
+
private static final String LOAD_BALANCER_NODE = "load_balancers";
/**
* Get group name path.
- *
+ *
* @param groupName group name
* @return group name path
*/
public String getGroupNamePath(final String groupName) {
- return String.join("/", "", groupName);
+ return String.join("/", DATA_SOURCES, groupName);
}
/**
* Get load balancer name.
- *
+ *
* @param loadBalancerName load balancer name
* @return load balancer path
*/
public String getLoadBalancerPath(final String loadBalancerName) {
- return String.join("/", "", LOAD_BALANCER_NODE, loadBalancerName);
+ return String.join("/", LOAD_BALANCER_NODE, loadBalancerName);
}
}