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/24 13:13:08 UTC
[shardingsphere] branch master updated: Refactor encrypt event & subscriber (#26481)
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 94d032c4b42 Refactor encrypt event & subscriber (#26481)
94d032c4b42 is described below
commit 94d032c4b4200196656a84a50e11bc18afc73ebb
Author: ChenJiaHao <Pa...@163.com>
AuthorDate: Sat Jun 24 21:13:01 2023 +0800
Refactor encrypt event & subscriber (#26481)
---
.../EncryptRuleConfigurationEventBuilder.java | 47 ++++++----------------
.../event/encryptor/AlterEncryptorEvent.java | 3 --
.../encrypt/event/table/AddEncryptTableEvent.java | 3 --
.../event/table/AlterEncryptTableEvent.java | 3 --
.../metadata/converter/EncryptNodeConverter.java | 30 +++++++-------
.../encrypt/subscriber/EncryptTableSubscriber.java | 13 +++++-
.../encrypt/subscriber/EncryptorSubscriber.java | 11 ++++-
.../converter/EncryptNodeConverterTest.java | 8 ++--
.../converter/ReadwriteSplittingNodeConverter.java | 24 +++++------
9 files changed, 65 insertions(+), 77 deletions(-)
diff --git a/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/event/EncryptRuleConfigurationEventBuilder.java b/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/event/EncryptRuleConfigurationEventBuilder.java
index 9ce7de83a77..79d5ef50d1b 100644
--- a/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/event/EncryptRuleConfigurationEventBuilder.java
+++ b/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/event/EncryptRuleConfigurationEventBuilder.java
@@ -18,20 +18,13 @@
package org.apache.shardingsphere.encrypt.event;
import com.google.common.base.Strings;
-import org.apache.shardingsphere.encrypt.api.config.rule.EncryptTableRuleConfiguration;
+import org.apache.shardingsphere.encrypt.event.encryptor.AlterEncryptorEvent;
+import org.apache.shardingsphere.encrypt.event.encryptor.DeleteEncryptorEvent;
import org.apache.shardingsphere.encrypt.event.table.AddEncryptTableEvent;
import org.apache.shardingsphere.encrypt.event.table.AlterEncryptTableEvent;
import org.apache.shardingsphere.encrypt.event.table.DeleteEncryptTableEvent;
-import org.apache.shardingsphere.encrypt.event.encryptor.AlterEncryptorEvent;
-import org.apache.shardingsphere.encrypt.event.encryptor.DeleteEncryptorEvent;
import org.apache.shardingsphere.encrypt.metadata.converter.EncryptNodeConverter;
-import org.apache.shardingsphere.encrypt.yaml.config.rule.YamlEncryptTableRuleConfiguration;
-import org.apache.shardingsphere.encrypt.yaml.swapper.rule.YamlEncryptTableRuleConfigurationSwapper;
-import org.apache.shardingsphere.infra.config.algorithm.AlgorithmConfiguration;
import org.apache.shardingsphere.infra.rule.event.GovernanceEvent;
-import org.apache.shardingsphere.infra.util.yaml.YamlEngine;
-import org.apache.shardingsphere.infra.yaml.config.pojo.algorithm.YamlAlgorithmConfiguration;
-import org.apache.shardingsphere.infra.yaml.config.swapper.algorithm.YamlAlgorithmConfigurationSwapper;
import org.apache.shardingsphere.mode.event.DataChangedEvent;
import org.apache.shardingsphere.mode.event.DataChangedEvent.Type;
import org.apache.shardingsphere.mode.spi.RuleConfigurationEventBuilder;
@@ -48,45 +41,31 @@ public final class EncryptRuleConfigurationEventBuilder implements RuleConfigura
if (!EncryptNodeConverter.isEncryptPath(event.getKey()) || Strings.isNullOrEmpty(event.getValue())) {
return Optional.empty();
}
- Optional<String> tableName = EncryptNodeConverter.getTableName(event.getKey());
+ Optional<String> tableName = EncryptNodeConverter.getTableNameByActiveVersionPath(event.getKey());
if (tableName.isPresent() && !Strings.isNullOrEmpty(event.getValue())) {
- Optional<String> encryptTableVersion = EncryptNodeConverter.getEncryptTableVersion(event.getKey());
- if (encryptTableVersion.isPresent()) {
- return createEncryptConfigEvent(databaseName, tableName.get(), encryptTableVersion.get(), event);
- }
+ return createEncryptConfigEvent(databaseName, tableName.get(), event);
}
- Optional<String> encryptorName = EncryptNodeConverter.getEncryptorName(event.getKey());
+ Optional<String> encryptorName = EncryptNodeConverter.getEncryptorNameByActiveVersionPath(event.getKey());
if (encryptorName.isPresent() && !Strings.isNullOrEmpty(event.getValue())) {
- Optional<String> encryptorVersion = EncryptNodeConverter.getEncryptorVersion(event.getKey());
- if (encryptorVersion.isPresent()) {
- return createEncryptorEvent(databaseName, encryptorName.get(), encryptorVersion.get(), event);
- }
+ return createEncryptorEvent(databaseName, encryptorName.get(), event);
}
return Optional.empty();
}
- private Optional<GovernanceEvent> createEncryptConfigEvent(final String databaseName, final String groupName, final String version, final DataChangedEvent event) {
+ private Optional<GovernanceEvent> createEncryptConfigEvent(final String databaseName, final String groupName, final DataChangedEvent event) {
if (Type.ADDED == event.getType()) {
- return Optional.of(new AddEncryptTableEvent(databaseName, swapEncryptTableRuleConfig(event.getValue()), event.getKey(), version));
+ return Optional.of(new AddEncryptTableEvent(databaseName, event.getKey(), event.getValue()));
}
if (Type.UPDATED == event.getType()) {
- return Optional.of(new AlterEncryptTableEvent(databaseName, groupName, swapEncryptTableRuleConfig(event.getValue()), event.getKey(), version));
+ return Optional.of(new AlterEncryptTableEvent(databaseName, groupName, event.getKey(), event.getValue()));
}
- return Optional.of(new DeleteEncryptTableEvent(databaseName, groupName, event.getKey(), version));
+ return Optional.of(new DeleteEncryptTableEvent(databaseName, groupName, event.getKey(), event.getValue()));
}
- private EncryptTableRuleConfiguration swapEncryptTableRuleConfig(final String yamlContext) {
- return new YamlEncryptTableRuleConfigurationSwapper().swapToObject(YamlEngine.unmarshal(yamlContext, YamlEncryptTableRuleConfiguration.class));
- }
-
- private Optional<GovernanceEvent> createEncryptorEvent(final String databaseName, final String encryptorName, final String version, final DataChangedEvent event) {
+ private Optional<GovernanceEvent> createEncryptorEvent(final String databaseName, final String encryptorName, final DataChangedEvent event) {
if (Type.ADDED == event.getType() || Type.UPDATED == event.getType()) {
- return Optional.of(new AlterEncryptorEvent(databaseName, encryptorName, swapToAlgorithmConfig(event.getValue()), event.getKey(), version));
+ return Optional.of(new AlterEncryptorEvent(databaseName, encryptorName, event.getKey(), event.getValue()));
}
- return Optional.of(new DeleteEncryptorEvent(databaseName, encryptorName, event.getKey(), version));
- }
-
- private AlgorithmConfiguration swapToAlgorithmConfig(final String yamlContext) {
- return new YamlAlgorithmConfigurationSwapper().swapToObject(YamlEngine.unmarshal(yamlContext, YamlAlgorithmConfiguration.class));
+ return Optional.of(new DeleteEncryptorEvent(databaseName, encryptorName, event.getKey(), event.getValue()));
}
}
diff --git a/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/event/encryptor/AlterEncryptorEvent.java b/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/event/encryptor/AlterEncryptorEvent.java
index 84cc8841ae2..3368e6abbc9 100644
--- a/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/event/encryptor/AlterEncryptorEvent.java
+++ b/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/event/encryptor/AlterEncryptorEvent.java
@@ -19,7 +19,6 @@ package org.apache.shardingsphere.encrypt.event.encryptor;
import lombok.Getter;
import lombok.RequiredArgsConstructor;
-import org.apache.shardingsphere.infra.config.algorithm.AlgorithmConfiguration;
import org.apache.shardingsphere.infra.rule.event.GovernanceEvent;
/**
@@ -33,8 +32,6 @@ public final class AlterEncryptorEvent implements GovernanceEvent {
private final String encryptorName;
- private final AlgorithmConfiguration config;
-
private final String activeVersionKey;
private final String activeVersion;
diff --git a/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/event/table/AddEncryptTableEvent.java b/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/event/table/AddEncryptTableEvent.java
index 8117c5c6464..c8f3234a75d 100644
--- a/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/event/table/AddEncryptTableEvent.java
+++ b/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/event/table/AddEncryptTableEvent.java
@@ -19,7 +19,6 @@ package org.apache.shardingsphere.encrypt.event.table;
import lombok.Getter;
import lombok.RequiredArgsConstructor;
-import org.apache.shardingsphere.encrypt.api.config.rule.EncryptTableRuleConfiguration;
import org.apache.shardingsphere.infra.rule.event.GovernanceEvent;
/**
@@ -31,8 +30,6 @@ public final class AddEncryptTableEvent implements GovernanceEvent {
private final String databaseName;
- private final EncryptTableRuleConfiguration config;
-
private final String activeVersionKey;
private final String activeVersion;
diff --git a/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/event/table/AlterEncryptTableEvent.java b/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/event/table/AlterEncryptTableEvent.java
index 4dee67d2922..52e9b90db4f 100644
--- a/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/event/table/AlterEncryptTableEvent.java
+++ b/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/event/table/AlterEncryptTableEvent.java
@@ -19,7 +19,6 @@ package org.apache.shardingsphere.encrypt.event.table;
import lombok.Getter;
import lombok.RequiredArgsConstructor;
-import org.apache.shardingsphere.encrypt.api.config.rule.EncryptTableRuleConfiguration;
import org.apache.shardingsphere.infra.rule.event.GovernanceEvent;
/**
@@ -33,8 +32,6 @@ public final class AlterEncryptTableEvent implements GovernanceEvent {
private final String tableName;
- private final EncryptTableRuleConfiguration config;
-
private final String activeVersionKey;
private final String activeVersion;
diff --git a/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/metadata/converter/EncryptNodeConverter.java b/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/metadata/converter/EncryptNodeConverter.java
index 1f560b9ab7f..b4304b76c57 100644
--- a/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/metadata/converter/EncryptNodeConverter.java
+++ b/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/metadata/converter/EncryptNodeConverter.java
@@ -40,7 +40,7 @@ public final class EncryptNodeConverter {
private static final String RULE_NAME_PATTERN = "/([\\w\\-]+)?";
- private static final String RULE_VERSION = "/([\\w\\-]+)/versions/([\\w\\-]+)$";
+ private static final String RULE_ACTIVE_VERSION = "/([\\w\\-]+)/active_version$";
/**
* Get table name path.
@@ -123,26 +123,26 @@ public final class EncryptNodeConverter {
}
/**
- * Get encrypt table version.
+ * Get encrypt table name by active version path.
*
- * @param rulePath rule path
- * @return encrypt table version
+ * @param activeVersionPath active version path
+ * @return table name
*/
- public static Optional<String> getEncryptTableVersion(final String rulePath) {
- Pattern pattern = Pattern.compile(RULES_NODE_PREFIX + ROOT_NODE + "/" + TABLES_NODE + RULE_VERSION, Pattern.CASE_INSENSITIVE);
- Matcher matcher = pattern.matcher(rulePath);
- return matcher.find() ? Optional.of(matcher.group(4)) : Optional.empty();
+ public static Optional<String> getTableNameByActiveVersionPath(final String activeVersionPath) {
+ Pattern pattern = Pattern.compile(RULES_NODE_PREFIX + ROOT_NODE + "/" + TABLES_NODE + RULE_ACTIVE_VERSION, Pattern.CASE_INSENSITIVE);
+ Matcher matcher = pattern.matcher(activeVersionPath);
+ return matcher.find() ? Optional.of(matcher.group(3)) : Optional.empty();
}
/**
- * Get encryptor version.
+ * Get encryptor name by active version path.
*
- * @param rulePath rule path
- * @return encryptor version
+ * @param activeVersionPath active version path
+ * @return encryptor name
*/
- public static Optional<String> getEncryptorVersion(final String rulePath) {
- Pattern pattern = Pattern.compile(RULES_NODE_PREFIX + ROOT_NODE + "/" + ENCRYPTORS_NODE + RULE_VERSION, Pattern.CASE_INSENSITIVE);
- Matcher matcher = pattern.matcher(rulePath);
- return matcher.find() ? Optional.of(matcher.group(4)) : Optional.empty();
+ public static Optional<String> getEncryptorNameByActiveVersionPath(final String activeVersionPath) {
+ Pattern pattern = Pattern.compile(RULES_NODE_PREFIX + ROOT_NODE + "/" + ENCRYPTORS_NODE + RULE_ACTIVE_VERSION, Pattern.CASE_INSENSITIVE);
+ Matcher matcher = pattern.matcher(activeVersionPath);
+ return matcher.find() ? Optional.of(matcher.group(3)) : Optional.empty();
}
}
diff --git a/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/subscriber/EncryptTableSubscriber.java b/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/subscriber/EncryptTableSubscriber.java
index d73b5a7c36e..23cacb5de20 100644
--- a/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/subscriber/EncryptTableSubscriber.java
+++ b/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/subscriber/EncryptTableSubscriber.java
@@ -25,9 +25,12 @@ import org.apache.shardingsphere.encrypt.event.table.AddEncryptTableEvent;
import org.apache.shardingsphere.encrypt.event.table.AlterEncryptTableEvent;
import org.apache.shardingsphere.encrypt.event.table.DeleteEncryptTableEvent;
import org.apache.shardingsphere.encrypt.rule.EncryptRule;
+import org.apache.shardingsphere.encrypt.yaml.config.rule.YamlEncryptTableRuleConfiguration;
+import org.apache.shardingsphere.encrypt.yaml.swapper.rule.YamlEncryptTableRuleConfigurationSwapper;
import org.apache.shardingsphere.infra.instance.InstanceContext;
import org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.rule.RuleConfigurationSubscribeCoordinator;
+import org.apache.shardingsphere.infra.util.yaml.YamlEngine;
import org.apache.shardingsphere.mode.event.config.DatabaseRuleConfigurationChangedEvent;
import java.util.Collections;
@@ -63,7 +66,8 @@ public final class EncryptTableSubscriber implements RuleConfigurationSubscribeC
return;
}
ShardingSphereDatabase database = databases.get(event.getDatabaseName());
- EncryptTableRuleConfiguration needToAddedConfig = event.getConfig();
+ EncryptTableRuleConfiguration needToAddedConfig = swapEncryptTableRuleConfig(
+ instanceContext.getModeContextManager().getVersionPathByActiveVersionKey(event.getActiveVersionKey(), event.getActiveVersion()));
Optional<EncryptRule> rule = database.getRuleMetaData().findSingleRule(EncryptRule.class);
EncryptRuleConfiguration config;
if (rule.isPresent()) {
@@ -86,7 +90,8 @@ public final class EncryptTableSubscriber implements RuleConfigurationSubscribeC
return;
}
ShardingSphereDatabase database = databases.get(event.getDatabaseName());
- EncryptTableRuleConfiguration needToAlteredConfig = event.getConfig();
+ EncryptTableRuleConfiguration needToAlteredConfig = swapEncryptTableRuleConfig(
+ instanceContext.getModeContextManager().getVersionPathByActiveVersionKey(event.getActiveVersionKey(), event.getActiveVersion()));
EncryptRuleConfiguration config = (EncryptRuleConfiguration) database.getRuleMetaData().getSingleRule(EncryptRule.class).getConfiguration();
config.getTables().removeIf(each -> each.getName().equals(event.getTableName()));
config.getTables().add(needToAlteredConfig);
@@ -108,4 +113,8 @@ public final class EncryptTableSubscriber implements RuleConfigurationSubscribeC
config.getTables().removeIf(each -> each.getName().equals(event.getTableName()));
instanceContext.getEventBusContext().post(new DatabaseRuleConfigurationChangedEvent(event.getDatabaseName(), config));
}
+
+ private EncryptTableRuleConfiguration swapEncryptTableRuleConfig(final String yamlContext) {
+ return new YamlEncryptTableRuleConfigurationSwapper().swapToObject(YamlEngine.unmarshal(yamlContext, YamlEncryptTableRuleConfiguration.class));
+ }
}
diff --git a/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/subscriber/EncryptorSubscriber.java b/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/subscriber/EncryptorSubscriber.java
index 2ade171d753..f2a78a05e42 100644
--- a/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/subscriber/EncryptorSubscriber.java
+++ b/features/encrypt/core/src/main/java/org/apache/shardingsphere/encrypt/subscriber/EncryptorSubscriber.java
@@ -23,9 +23,13 @@ import org.apache.shardingsphere.encrypt.api.config.EncryptRuleConfiguration;
import org.apache.shardingsphere.encrypt.event.encryptor.AlterEncryptorEvent;
import org.apache.shardingsphere.encrypt.event.encryptor.DeleteEncryptorEvent;
import org.apache.shardingsphere.encrypt.rule.EncryptRule;
+import org.apache.shardingsphere.infra.config.algorithm.AlgorithmConfiguration;
import org.apache.shardingsphere.infra.instance.InstanceContext;
import org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabase;
import org.apache.shardingsphere.infra.rule.RuleConfigurationSubscribeCoordinator;
+import org.apache.shardingsphere.infra.util.yaml.YamlEngine;
+import org.apache.shardingsphere.infra.yaml.config.pojo.algorithm.YamlAlgorithmConfiguration;
+import org.apache.shardingsphere.infra.yaml.config.swapper.algorithm.YamlAlgorithmConfigurationSwapper;
import org.apache.shardingsphere.mode.event.config.DatabaseRuleConfigurationChangedEvent;
import java.util.Map;
@@ -60,7 +64,8 @@ public final class EncryptorSubscriber implements RuleConfigurationSubscribeCoor
}
ShardingSphereDatabase database = databases.get(event.getDatabaseName());
EncryptRuleConfiguration config = (EncryptRuleConfiguration) database.getRuleMetaData().getSingleRule(EncryptRule.class).getConfiguration();
- config.getEncryptors().put(event.getEncryptorName(), event.getConfig());
+ config.getEncryptors().put(event.getEncryptorName(), swapToAlgorithmConfig(
+ instanceContext.getModeContextManager().getVersionPathByActiveVersionKey(event.getActiveVersionKey(), event.getActiveVersion())));
}
/**
@@ -78,4 +83,8 @@ public final class EncryptorSubscriber implements RuleConfigurationSubscribeCoor
config.getEncryptors().remove(event.getEncryptorName());
instanceContext.getEventBusContext().post(new DatabaseRuleConfigurationChangedEvent(event.getDatabaseName(), config));
}
+
+ private AlgorithmConfiguration swapToAlgorithmConfig(final String yamlContext) {
+ return new YamlAlgorithmConfigurationSwapper().swapToObject(YamlEngine.unmarshal(yamlContext, YamlAlgorithmConfiguration.class));
+ }
}
diff --git a/features/encrypt/core/src/test/java/org/apache/shardingsphere/encrypt/metadata/converter/EncryptNodeConverterTest.java b/features/encrypt/core/src/test/java/org/apache/shardingsphere/encrypt/metadata/converter/EncryptNodeConverterTest.java
index 8cbe8b14c80..bc896fee888 100644
--- a/features/encrypt/core/src/test/java/org/apache/shardingsphere/encrypt/metadata/converter/EncryptNodeConverterTest.java
+++ b/features/encrypt/core/src/test/java/org/apache/shardingsphere/encrypt/metadata/converter/EncryptNodeConverterTest.java
@@ -64,15 +64,15 @@ class EncryptNodeConverterTest {
@Test
void assertGetEncryptTableVersion() {
- Optional<String> actual = EncryptNodeConverter.getEncryptTableVersion("/metadata/foo_db/rules/encrypt/tables/foo_table/versions/1");
+ Optional<String> actual = EncryptNodeConverter.getTableNameByActiveVersionPath("/metadata/foo_db/rules/encrypt/tables/foo_table/active_version");
assertTrue(actual.isPresent());
- assertThat(actual.get(), is("1"));
+ assertThat(actual.get(), is("foo_table"));
}
@Test
void assertGetEncryptAlgorithmVersion() {
- Optional<String> actual = EncryptNodeConverter.getEncryptorVersion("/metadata/foo_db/rules/encrypt/encryptors/aes_algorithm/versions/1");
+ Optional<String> actual = EncryptNodeConverter.getEncryptorNameByActiveVersionPath("/metadata/foo_db/rules/encrypt/encryptors/aes_algorithm/active_version");
assertTrue(actual.isPresent());
- assertThat(actual.get(), is("1"));
+ assertThat(actual.get(), is("aes_algorithm"));
}
}
diff --git a/features/readwrite-splitting/core/src/main/java/org/apache/shardingsphere/readwritesplitting/metadata/converter/ReadwriteSplittingNodeConverter.java b/features/readwrite-splitting/core/src/main/java/org/apache/shardingsphere/readwritesplitting/metadata/converter/ReadwriteSplittingNodeConverter.java
index 84e4dc29172..ea79cab81b2 100644
--- a/features/readwrite-splitting/core/src/main/java/org/apache/shardingsphere/readwritesplitting/metadata/converter/ReadwriteSplittingNodeConverter.java
+++ b/features/readwrite-splitting/core/src/main/java/org/apache/shardingsphere/readwritesplitting/metadata/converter/ReadwriteSplittingNodeConverter.java
@@ -110,6 +110,18 @@ public final class ReadwriteSplittingNodeConverter {
return matcher.find() ? Optional.of(matcher.group(3)) : Optional.empty();
}
+ /**
+ * Get load balancer name.
+ *
+ * @param rulePath rule path
+ * @return load balancer name
+ */
+ public static Optional<String> getLoadBalancerName(final String rulePath) {
+ Pattern pattern = Pattern.compile(RULES_NODE_PREFIX + ROOT_NODE + "/" + LOAD_BALANCER_NODE + RULE_NAME_PATTERN, Pattern.CASE_INSENSITIVE);
+ Matcher matcher = pattern.matcher(rulePath);
+ return matcher.find() ? Optional.of(matcher.group(3)) : Optional.empty();
+ }
+
/**
* Get group name by active version path.
*
@@ -133,16 +145,4 @@ public final class ReadwriteSplittingNodeConverter {
Matcher matcher = pattern.matcher(activeVersionPath);
return matcher.find() ? Optional.of(matcher.group(3)) : Optional.empty();
}
-
- /**
- * Get load balancer name.
- *
- * @param rulePath rule path
- * @return load balancer name
- */
- public static Optional<String> getLoadBalancerName(final String rulePath) {
- Pattern pattern = Pattern.compile(RULES_NODE_PREFIX + ROOT_NODE + "/" + LOAD_BALANCER_NODE + RULE_NAME_PATTERN, Pattern.CASE_INSENSITIVE);
- Matcher matcher = pattern.matcher(rulePath);
- return matcher.find() ? Optional.of(matcher.group(3)) : Optional.empty();
- }
}