Include ip address and port, multiple servers split by comma. Etc: {@code http:\/\/host1:2379,http:\/\/host2:2379}<\/p>.",
+ "type": "java.lang.String"
},
{
"sourceType": "io.shardingsphere.orchestration.reg.etcd.EtcdConfiguration",
- "defaultValue": 200,
- "name": "sharding.jdbc.config.orchestration.etcd.retry-interval-milliseconds",
- "description": "Maximal retries when calling a etcd method.",
+ "defaultValue": 500,
+ "name": "sharding.jdbc.config.orchestration.etcd.operation-timeout-milliseconds",
+ "description": "Operation timeout time in milliseconds.",
"type": "java.lang.Integer"
},
{
"sourceType": "io.shardingsphere.orchestration.reg.etcd.EtcdConfiguration",
- "name": "sharding.jdbc.config.orchestration.etcd.server-lists",
- "description": "Etcd server list.\n \n
Include ip address and port, multiple servers split by comma. Etc: {@code http:\/\/host1:2379,http:\/\/host2:2379}<\/p>.",
- "type": "java.lang.String"
+ "defaultValue": 3,
+ "name": "sharding.jdbc.config.orchestration.etcd.max-retries",
+ "description": "Max number of times to retry.",
+ "type": "java.lang.Integer"
},
{
"sourceType": "io.shardingsphere.orchestration.reg.etcd.EtcdConfiguration",
- "defaultValue": 60,
- "name": "sharding.jdbc.config.orchestration.etcd.time-to-live-seconds",
- "description": "Time to live seconds of ephemeral keys.",
+ "defaultValue": 200,
+ "name": "sharding.jdbc.config.orchestration.etcd.retry-interval-milliseconds",
+ "description": "Time interval in milliseconds on each retry.",
"type": "java.lang.Integer"
},
{
"sourceType": "io.shardingsphere.orchestration.reg.etcd.EtcdConfiguration",
- "defaultValue": 500,
- "name": "sharding.jdbc.config.orchestration.etcd.timeout-milliseconds",
- "description": "Timeout when calling a etcd method in milliseconds.",
+ "defaultValue": 60,
+ "name": "sharding.jdbc.config.orchestration.etcd.time-to-live-seconds",
+ "description": "Time to live in seconds of ephemeral keys.",
"type": "java.lang.Integer"
},
{
"sourceType": "io.shardingsphere.orchestration.reg.zookeeper.ZookeeperConfiguration",
- "defaultValue": 1000,
- "name": "sharding.jdbc.config.orchestration.zookeeper.base-sleep-time-milliseconds",
- "description": "Base sleep time milliseconds.",
- "type": "java.lang.Integer"
+ "name": "sharding.jdbc.config.orchestration.zookeeper.server-lists",
+ "description": "Zookeeper server list.\n \n
Include ip address and port, multiple servers split by comma. Etc: {@code host1:2181,host2:2181}<\/p>.",
+ "type": "java.lang.String"
},
{
"sourceType": "io.shardingsphere.orchestration.reg.zookeeper.ZookeeperConfiguration",
- "defaultValue": 0,
- "name": "sharding.jdbc.config.orchestration.zookeeper.connection-timeout-milliseconds",
- "description": "Connection timeout milliseconds.",
- "type": "java.lang.Integer"
+ "name": "sharding.jdbc.config.orchestration.zookeeper.namespace",
+ "description": "Namespace of registry center.",
+ "type": "java.lang.String"
},
{
"sourceType": "io.shardingsphere.orchestration.reg.zookeeper.ZookeeperConfiguration",
"name": "sharding.jdbc.config.orchestration.zookeeper.digest",
- "description": "Digest for zookeeper.\n \n
Default is not need digest<\/p>.",
+ "description": "Digest for registry center.\n \n
Default is not need digest<\/p>.",
"type": "java.lang.String"
},
{
"sourceType": "io.shardingsphere.orchestration.reg.zookeeper.ZookeeperConfiguration",
- "defaultValue": 3,
- "name": "sharding.jdbc.config.orchestration.zookeeper.max-retries",
- "description": "Max retries.",
+ "defaultValue": 0,
+ "name": "sharding.jdbc.config.orchestration.zookeeper.operation-timeout-milliseconds",
+ "description": "Operation timeout time in milliseconds.",
"type": "java.lang.Integer"
},
{
"sourceType": "io.shardingsphere.orchestration.reg.zookeeper.ZookeeperConfiguration",
- "defaultValue": 3000,
- "name": "sharding.jdbc.config.orchestration.zookeeper.max-sleep-time-milliseconds",
- "description": "Max sleep time milliseconds.",
+ "defaultValue": 3,
+ "name": "sharding.jdbc.config.orchestration.zookeeper.max-retries",
+ "description": "Max number of times to retry.",
"type": "java.lang.Integer"
},
{
"sourceType": "io.shardingsphere.orchestration.reg.zookeeper.ZookeeperConfiguration",
- "name": "sharding.jdbc.config.orchestration.zookeeper.namespace",
- "description": "Namespace of zookeeper.",
- "type": "java.lang.String"
- },
- {
- "sourceType": "io.shardingsphere.orchestration.reg.zookeeper.ZookeeperConfiguration",
- "name": "sharding.jdbc.config.orchestration.zookeeper.server-lists",
- "description": "Zookeeper server list.\n \n
Include ip address and port, multiple servers split by comma. Etc: {@code host1:2181,host2:2181}<\/p>.",
- "type": "java.lang.String"
+ "defaultValue": 1000,
+ "name": "sharding.jdbc.config.orchestration.zookeeper.retry-interval-milliseconds",
+ "description": "Time interval in milliseconds on each retry.",
+ "type": "java.lang.Integer"
},
{
"sourceType": "io.shardingsphere.orchestration.reg.zookeeper.ZookeeperConfiguration",
"defaultValue": 0,
- "name": "sharding.jdbc.config.orchestration.zookeeper.session-timeout-milliseconds",
- "description": "Session timeout milliseconds.",
+ "name": "sharding.jdbc.config.orchestration.zookeeper.time-to-live-seconds",
+ "description": "Time to live in seconds of ephemeral keys.",
"type": "java.lang.Integer"
},
{
diff --git a/sharding-jdbc/sharding-jdbc-orchestration-spring/sharding-jdbc-orchestration-spring-namespace/src/main/java/io/shardingsphere/shardingjdbc/orchestration/spring/namespace/constants/EtcdRegistryCenterBeanDefinitionParserTag.java b/sharding-jdbc/sharding-jdbc-orchestration-spring/sharding-jdbc-orchestration-spring-namespace/src/main/java/io/shardingsphere/shardingjdbc/orchestration/spring/namespace/constants/EtcdRegistryCenterBeanDefinitionParserTag.java
index a1d47ba1bef6a..21f42c4f97470 100644
--- a/sharding-jdbc/sharding-jdbc-orchestration-spring/sharding-jdbc-orchestration-spring-namespace/src/main/java/io/shardingsphere/shardingjdbc/orchestration/spring/namespace/constants/EtcdRegistryCenterBeanDefinitionParserTag.java
+++ b/sharding-jdbc/sharding-jdbc-orchestration-spring/sharding-jdbc-orchestration-spring-namespace/src/main/java/io/shardingsphere/shardingjdbc/orchestration/spring/namespace/constants/EtcdRegistryCenterBeanDefinitionParserTag.java
@@ -32,11 +32,11 @@ public final class EtcdRegistryCenterBeanDefinitionParserTag {
public static final String SERVER_LISTS_TAG = "server-lists";
- public static final String TIME_TO_LIVE_SECONDS_TAG = "time-to-live-seconds";
+ public static final String OPERATION_TIMEOUT_MILLISECONDS_TAG = "operation-timeout-milliseconds";
- public static final String TIMEOUT_MILLISECONDS_TAG = "timeout-milliseconds";
+ public static final String MAX_RETRIES_TAG = "max-retries";
public static final String RETRY_INTERVAL_MILLISECONDS_TAG = "retry-interval-milliseconds";
- public static final String MAX_RETRIES_TAG = "max-retries";
+ public static final String TIME_TO_LIVE_SECONDS_TAG = "time-to-live-seconds";
}
diff --git a/sharding-jdbc/sharding-jdbc-orchestration-spring/sharding-jdbc-orchestration-spring-namespace/src/main/java/io/shardingsphere/shardingjdbc/orchestration/spring/namespace/constants/ZookeeperRegistryCenterBeanDefinitionParserTag.java b/sharding-jdbc/sharding-jdbc-orchestration-spring/sharding-jdbc-orchestration-spring-namespace/src/main/java/io/shardingsphere/shardingjdbc/orchestration/spring/namespace/constants/ZookeeperRegistryCenterBeanDefinitionParserTag.java
index 0637aea5cb9bd..ad1035bd9ce46 100644
--- a/sharding-jdbc/sharding-jdbc-orchestration-spring/sharding-jdbc-orchestration-spring-namespace/src/main/java/io/shardingsphere/shardingjdbc/orchestration/spring/namespace/constants/ZookeeperRegistryCenterBeanDefinitionParserTag.java
+++ b/sharding-jdbc/sharding-jdbc-orchestration-spring/sharding-jdbc-orchestration-spring-namespace/src/main/java/io/shardingsphere/shardingjdbc/orchestration/spring/namespace/constants/ZookeeperRegistryCenterBeanDefinitionParserTag.java
@@ -34,15 +34,13 @@ public final class ZookeeperRegistryCenterBeanDefinitionParserTag {
public static final String NAMESPACE_TAG = "namespace";
- public static final String BASE_SLEEP_TIME_MILLISECONDS_TAG = "base-sleep-time-milliseconds";
+ public static final String DIGEST_TAG = "digest";
- public static final String MAX_SLEEP_TIME_MILLISECONDS_TAG = "max-sleep-time-milliseconds";
+ public static final String OPERATION_TIMEOUT_MILLISECONDS_TAG = "operation-timeout-milliseconds";
public static final String MAX_RETRIES_TAG = "max-retries";
- public static final String SESSION_TIMEOUT_MILLISECONDS_TAG = "session-timeout-milliseconds";
-
- public static final String CONNECTION_TIMEOUT_MILLISECONDS_TAG = "connection-timeout-milliseconds";
+ public static final String RETRY_INTERVAL_MILLISECONDS_TAG = "retry-interval-milliseconds";
- public static final String DIGEST_TAG = "digest";
+ public static final String TIME_TO_LIVE_SECONDS_TAG = "time-to-live-seconds";
}
diff --git a/sharding-jdbc/sharding-jdbc-orchestration-spring/sharding-jdbc-orchestration-spring-namespace/src/main/java/io/shardingsphere/shardingjdbc/orchestration/spring/namespace/parser/RegBeanDefinitionParser.java b/sharding-jdbc/sharding-jdbc-orchestration-spring/sharding-jdbc-orchestration-spring-namespace/src/main/java/io/shardingsphere/shardingjdbc/orchestration/spring/namespace/parser/RegBeanDefinitionParser.java
index 71fea8fa9349a..cbca58264508c 100644
--- a/sharding-jdbc/sharding-jdbc-orchestration-spring/sharding-jdbc-orchestration-spring-namespace/src/main/java/io/shardingsphere/shardingjdbc/orchestration/spring/namespace/parser/RegBeanDefinitionParser.java
+++ b/sharding-jdbc/sharding-jdbc-orchestration-spring/sharding-jdbc-orchestration-spring-namespace/src/main/java/io/shardingsphere/shardingjdbc/orchestration/spring/namespace/parser/RegBeanDefinitionParser.java
@@ -44,22 +44,21 @@ private AbstractBeanDefinition getZookeeperConfiguration(final Element element)
BeanDefinitionBuilder factory = BeanDefinitionBuilder.rootBeanDefinition(ZookeeperConfiguration.class);
addPropertyValueIfNotEmpty(ZookeeperRegistryCenterBeanDefinitionParserTag.SERVER_LISTS_TAG, "serverLists", element, factory);
addPropertyValueIfNotEmpty(ZookeeperRegistryCenterBeanDefinitionParserTag.NAMESPACE_TAG, "namespace", element, factory);
- addPropertyValueIfNotEmpty(ZookeeperRegistryCenterBeanDefinitionParserTag.BASE_SLEEP_TIME_MILLISECONDS_TAG, "baseSleepTimeMilliseconds", element, factory);
- addPropertyValueIfNotEmpty(ZookeeperRegistryCenterBeanDefinitionParserTag.MAX_SLEEP_TIME_MILLISECONDS_TAG, "maxSleepTimeMilliseconds", element, factory);
- addPropertyValueIfNotEmpty(ZookeeperRegistryCenterBeanDefinitionParserTag.MAX_RETRIES_TAG, "maxRetries", element, factory);
- addPropertyValueIfNotEmpty(ZookeeperRegistryCenterBeanDefinitionParserTag.SESSION_TIMEOUT_MILLISECONDS_TAG, "sessionTimeoutMilliseconds", element, factory);
- addPropertyValueIfNotEmpty(ZookeeperRegistryCenterBeanDefinitionParserTag.CONNECTION_TIMEOUT_MILLISECONDS_TAG, "connectionTimeoutMilliseconds", element, factory);
addPropertyValueIfNotEmpty(ZookeeperRegistryCenterBeanDefinitionParserTag.DIGEST_TAG, "digest", element, factory);
+ addPropertyValueIfNotEmpty(ZookeeperRegistryCenterBeanDefinitionParserTag.OPERATION_TIMEOUT_MILLISECONDS_TAG, "operationTimeoutMilliseconds", element, factory);
+ addPropertyValueIfNotEmpty(ZookeeperRegistryCenterBeanDefinitionParserTag.MAX_RETRIES_TAG, "maxRetries", element, factory);
+ addPropertyValueIfNotEmpty(ZookeeperRegistryCenterBeanDefinitionParserTag.RETRY_INTERVAL_MILLISECONDS_TAG, "retryIntervalMilliseconds", element, factory);
+ addPropertyValueIfNotEmpty(ZookeeperRegistryCenterBeanDefinitionParserTag.TIME_TO_LIVE_SECONDS_TAG, "timeToLiveSeconds", element, factory);
return factory.getBeanDefinition();
}
private AbstractBeanDefinition getEtcdConfiguration(final Element element) {
BeanDefinitionBuilder factory = BeanDefinitionBuilder.rootBeanDefinition(EtcdConfiguration.class);
addPropertyValueIfNotEmpty(EtcdRegistryCenterBeanDefinitionParserTag.SERVER_LISTS_TAG, "serverLists", element, factory);
- addPropertyValueIfNotEmpty(EtcdRegistryCenterBeanDefinitionParserTag.TIME_TO_LIVE_SECONDS_TAG, "timeToLiveSeconds", element, factory);
- addPropertyValueIfNotEmpty(EtcdRegistryCenterBeanDefinitionParserTag.TIMEOUT_MILLISECONDS_TAG, "timeoutMilliseconds", element, factory);
- addPropertyValueIfNotEmpty(EtcdRegistryCenterBeanDefinitionParserTag.RETRY_INTERVAL_MILLISECONDS_TAG, "retryIntervalMilliseconds", element, factory);
+ addPropertyValueIfNotEmpty(EtcdRegistryCenterBeanDefinitionParserTag.OPERATION_TIMEOUT_MILLISECONDS_TAG, "operationTimeoutMilliseconds", element, factory);
addPropertyValueIfNotEmpty(EtcdRegistryCenterBeanDefinitionParserTag.MAX_RETRIES_TAG, "maxRetries", element, factory);
+ addPropertyValueIfNotEmpty(EtcdRegistryCenterBeanDefinitionParserTag.RETRY_INTERVAL_MILLISECONDS_TAG, "retryIntervalMilliseconds", element, factory);
+ addPropertyValueIfNotEmpty(EtcdRegistryCenterBeanDefinitionParserTag.TIME_TO_LIVE_SECONDS_TAG, "timeToLiveSeconds", element, factory);
return factory.getBeanDefinition();
}
diff --git a/sharding-jdbc/sharding-jdbc-orchestration-spring/sharding-jdbc-orchestration-spring-namespace/src/main/resources/META-INF/namespace/orchestration.xsd b/sharding-jdbc/sharding-jdbc-orchestration-spring/sharding-jdbc-orchestration-spring-namespace/src/main/resources/META-INF/namespace/orchestration.xsd
index 61271afee2963..c16a63465bea3 100644
--- a/sharding-jdbc/sharding-jdbc-orchestration-spring/sharding-jdbc-orchestration-spring-namespace/src/main/resources/META-INF/namespace/orchestration.xsd
+++ b/sharding-jdbc/sharding-jdbc-orchestration-spring/sharding-jdbc-orchestration-spring-namespace/src/main/resources/META-INF/namespace/orchestration.xsd
@@ -27,12 +27,11 @@
-
-
-
-
-
+
+
+
+
@@ -42,8 +41,8 @@
+
-
diff --git a/sharding-jdbc/sharding-jdbc-orchestration-spring/sharding-jdbc-orchestration-spring-namespace/src/test/resources/META-INF/rdb/masterSlaveOrchestration.xml b/sharding-jdbc/sharding-jdbc-orchestration-spring/sharding-jdbc-orchestration-spring-namespace/src/test/resources/META-INF/rdb/masterSlaveOrchestration.xml
index 57265a570d03c..d9aff6d9280c7 100644
--- a/sharding-jdbc/sharding-jdbc-orchestration-spring/sharding-jdbc-orchestration-spring-namespace/src/test/resources/META-INF/rdb/masterSlaveOrchestration.xml
+++ b/sharding-jdbc/sharding-jdbc-orchestration-spring/sharding-jdbc-orchestration-spring-namespace/src/test/resources/META-INF/rdb/masterSlaveOrchestration.xml
@@ -8,7 +8,7 @@
http://shardingsphere.io/schema/shardingsphere/orchestration/orchestration.xsd">
-
+
diff --git a/sharding-jdbc/sharding-jdbc-orchestration-spring/sharding-jdbc-orchestration-spring-namespace/src/test/resources/META-INF/rdb/shardingMasterSlaveOrchestration.xml b/sharding-jdbc/sharding-jdbc-orchestration-spring/sharding-jdbc-orchestration-spring-namespace/src/test/resources/META-INF/rdb/shardingMasterSlaveOrchestration.xml
index 6ba4da4159a0f..6041e0161ae14 100644
--- a/sharding-jdbc/sharding-jdbc-orchestration-spring/sharding-jdbc-orchestration-spring-namespace/src/test/resources/META-INF/rdb/shardingMasterSlaveOrchestration.xml
+++ b/sharding-jdbc/sharding-jdbc-orchestration-spring/sharding-jdbc-orchestration-spring-namespace/src/test/resources/META-INF/rdb/shardingMasterSlaveOrchestration.xml
@@ -7,9 +7,9 @@
http://shardingsphere.io/schema/shardingsphere/orchestration
http://shardingsphere.io/schema/shardingsphere/orchestration/orchestration.xsd">
-
-
-
+
+
+
diff --git a/sharding-jdbc/sharding-jdbc-orchestration-spring/sharding-jdbc-orchestration-spring-namespace/src/test/resources/META-INF/rdb/shardingOrchestration.xml b/sharding-jdbc/sharding-jdbc-orchestration-spring/sharding-jdbc-orchestration-spring-namespace/src/test/resources/META-INF/rdb/shardingOrchestration.xml
index 60fca6866b19e..626ce4264d5bf 100644
--- a/sharding-jdbc/sharding-jdbc-orchestration-spring/sharding-jdbc-orchestration-spring-namespace/src/test/resources/META-INF/rdb/shardingOrchestration.xml
+++ b/sharding-jdbc/sharding-jdbc-orchestration-spring/sharding-jdbc-orchestration-spring-namespace/src/test/resources/META-INF/rdb/shardingOrchestration.xml
@@ -8,7 +8,7 @@
http://shardingsphere.io/schema/shardingsphere/orchestration/orchestration.xsd">
-
+
diff --git a/sharding-orchestration/sharding-orchestration-reg/pom.xml b/sharding-orchestration/sharding-orchestration-reg/pom.xml
index efd0aa1b8ad39..78e0b91725c07 100644
--- a/sharding-orchestration/sharding-orchestration-reg/pom.xml
+++ b/sharding-orchestration/sharding-orchestration-reg/pom.xml
@@ -39,11 +39,10 @@
com.github.rholderguava-retrying
-
+
org.apache.curatorcurator-test
-
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/etcd/EtcdConfiguration.java b/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/etcd/EtcdConfiguration.java
index 6c27aa678afd5..74752b3c2e6ed 100644
--- a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/etcd/EtcdConfiguration.java
+++ b/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/etcd/EtcdConfiguration.java
@@ -38,22 +38,22 @@ public final class EtcdConfiguration implements RegistryCenterConfiguration {
private String serverLists;
/**
- * Time to live seconds of ephemeral keys.
+ * Operation timeout time in milliseconds.
*/
- private int timeToLiveSeconds = 60;
+ private int operationTimeoutMilliseconds = 500;
/**
- * Timeout when calling a etcd method in milliseconds.
+ * Max number of times to retry.
*/
- private int timeoutMilliseconds = 500;
+ private int maxRetries = 3;
/**
- * Maximal retries when calling a etcd method.
+ * Time interval in milliseconds on each retry.
*/
private int retryIntervalMilliseconds = 200;
/**
- * Maximal retries when calling a etcd method.
+ * Time to live in seconds of ephemeral keys.
*/
- private int maxRetries = 3;
+ private int timeToLiveSeconds = 60;
}
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/etcd/EtcdRegistryCenter.java b/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/etcd/EtcdRegistryCenter.java
index a91e69325e4b9..9bd9e60515500 100644
--- a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/etcd/EtcdRegistryCenter.java
+++ b/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/etcd/EtcdRegistryCenter.java
@@ -23,14 +23,14 @@
import etcdserverpb.KVGrpc.KVFutureStub;
import etcdserverpb.LeaseGrpc;
import etcdserverpb.LeaseGrpc.LeaseFutureStub;
-import etcdserverpb.Rpc.WatchCreateRequest;
import etcdserverpb.Rpc.LeaseGrantRequest;
import etcdserverpb.Rpc.PutRequest;
import etcdserverpb.Rpc.RangeRequest;
import etcdserverpb.Rpc.RangeResponse;
+import etcdserverpb.Rpc.WatchCreateRequest;
+import etcdserverpb.Rpc.WatchRequest;
import etcdserverpb.WatchGrpc;
import etcdserverpb.WatchGrpc.WatchStub;
-import etcdserverpb.Rpc.WatchRequest;
import io.grpc.Channel;
import io.shardingsphere.orchestration.reg.api.RegistryCenter;
import io.shardingsphere.orchestration.reg.etcd.internal.channel.EtcdChannelFactory;
@@ -86,7 +86,7 @@ public String get(final String key) {
@Override
public String call() throws InterruptedException, ExecutionException, TimeoutException {
- RangeResponse response = kvStub.range(request).get(etcdConfig.getTimeoutMilliseconds(), TimeUnit.MILLISECONDS);
+ RangeResponse response = kvStub.range(request).get(etcdConfig.getOperationTimeoutMilliseconds(), TimeUnit.MILLISECONDS);
return response.getKvsCount() > 0 ? response.getKvs(0).getValue().toStringUtf8() : null;
}
}).orNull();
@@ -110,7 +110,7 @@ public List getChildrenKeys(final String key) {
@Override
public List call() throws InterruptedException, ExecutionException, TimeoutException {
- RangeResponse response = kvStub.range(request).get(etcdConfig.getTimeoutMilliseconds(), TimeUnit.MILLISECONDS);
+ RangeResponse response = kvStub.range(request).get(etcdConfig.getOperationTimeoutMilliseconds(), TimeUnit.MILLISECONDS);
List result = new ArrayList<>();
for (KeyValue each : response.getKvsList()) {
String childFullPath = each.getKey().toStringUtf8();
@@ -129,7 +129,7 @@ public void persist(final String key, final String value) {
@Override
public Void call() throws InterruptedException, ExecutionException, TimeoutException {
- kvStub.put(request).get(etcdConfig.getTimeoutMilliseconds(), TimeUnit.MILLISECONDS);
+ kvStub.put(request).get(etcdConfig.getOperationTimeoutMilliseconds(), TimeUnit.MILLISECONDS);
return null;
}
});
@@ -151,7 +151,7 @@ public void persistEphemeral(final String key, final String value) {
@Override
public Void call() throws InterruptedException, ExecutionException, TimeoutException {
- kvStub.put(request).get(etcdConfig.getTimeoutMilliseconds(), TimeUnit.MILLISECONDS);
+ kvStub.put(request).get(etcdConfig.getOperationTimeoutMilliseconds(), TimeUnit.MILLISECONDS);
return null;
}
});
@@ -163,7 +163,7 @@ private Optional lease() {
@Override
public Long call() throws InterruptedException, ExecutionException, TimeoutException {
- long leaseId = leaseStub.leaseGrant(request).get(etcdConfig.getTimeoutMilliseconds(), TimeUnit.MILLISECONDS).getID();
+ long leaseId = leaseStub.leaseGrant(request).get(etcdConfig.getOperationTimeoutMilliseconds(), TimeUnit.MILLISECONDS).getID();
keepAlive.heartbeat(leaseId);
return leaseId;
}
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/NewZookeeperRegistryCenter.java b/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/NewZookeeperRegistryCenter.java
index ca71d95a85856..693a1aceb06f9 100644
--- a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/NewZookeeperRegistryCenter.java
+++ b/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/NewZookeeperRegistryCenter.java
@@ -64,8 +64,8 @@ public NewZookeeperRegistryCenter(final ZookeeperConfiguration zkConfig) {
private ClientFactory buildClientFactory(final ZookeeperConfiguration zkConfig) {
ClientFactory result = new ClientFactory();
- result.setClientNamespace(zkConfig.getNamespace()).newClient(zkConfig.getServerLists(), zkConfig.getSessionTimeoutMilliseconds())
- .setRetryPolicy(new DelayRetryPolicy(zkConfig.getBaseSleepTimeMilliseconds(), zkConfig.getMaxRetries(), zkConfig.getMaxSleepTimeMilliseconds()));
+ result.setClientNamespace(zkConfig.getNamespace()).newClient(zkConfig.getServerLists(), zkConfig.getTimeToLiveSeconds() * 1000)
+ .setRetryPolicy(new DelayRetryPolicy(zkConfig.getRetryIntervalMilliseconds(), zkConfig.getMaxRetries(), zkConfig.getRetryIntervalMilliseconds()));
if (!Strings.isNullOrEmpty(zkConfig.getDigest())) {
result.authorization("digest", zkConfig.getDigest().getBytes(Charsets.UTF_8), ZooDefs.Ids.CREATOR_ALL_ACL);
}
@@ -76,9 +76,9 @@ private IClient initClient(final ClientFactory clientFactory, final ZookeeperCon
IClient result = null;
try {
// TODO There is a bug when the start time is very short, and I haven't found the reason yet
- // result = clientFactory.start(zkConfig.getMaxSleepTimeMilliseconds() * zkConfig.getMaxRetries(), TimeUnit.MILLISECONDS);
+ // result = clientFactory.start(zkConfig.getRetryIntervalMilliseconds() * zkConfig.getMaxRetries(), TimeUnit.MILLISECONDS);
result = clientFactory.start();
- if (!result.blockUntilConnected(zkConfig.getMaxSleepTimeMilliseconds() * zkConfig.getMaxRetries(), TimeUnit.MILLISECONDS)) {
+ if (!result.blockUntilConnected(zkConfig.getRetryIntervalMilliseconds() * zkConfig.getMaxRetries(), TimeUnit.MILLISECONDS)) {
result.close();
throw new KeeperException.OperationTimeoutException();
}
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/zookeeper/ZookeeperConfiguration.java b/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/zookeeper/ZookeeperConfiguration.java
index 7e312cd88754c..8a8e6d4dc1d48 100644
--- a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/zookeeper/ZookeeperConfiguration.java
+++ b/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/zookeeper/ZookeeperConfiguration.java
@@ -38,41 +38,36 @@ public final class ZookeeperConfiguration implements RegistryCenterConfiguration
private String serverLists;
/**
- * Namespace of zookeeper.
+ * Namespace of registry center.
*/
private String namespace;
/**
- * Base sleep time milliseconds.
+ * Digest for registry center.
+ *
+ *
Default is not need digest.
*/
- private int baseSleepTimeMilliseconds = 1000;
+ private String digest;
/**
- * Max sleep time milliseconds.
+ * Operation timeout time in milliseconds.
*/
- private int maxSleepTimeMilliseconds = 3000;
+ private int operationTimeoutMilliseconds;
/**
- * Max retries.
+ * Max number of times to retry.
*/
private int maxRetries = 3;
/**
- * Session timeout milliseconds.
+ * Time interval in milliseconds on each retry.
*/
- private int sessionTimeoutMilliseconds;
+ private int retryIntervalMilliseconds = 1000;
/**
- * Connection timeout milliseconds.
+ * Time to live in seconds of ephemeral keys.
*/
- private int connectionTimeoutMilliseconds;
-
- /**
- * Digest for zookeeper.
- *
- *
Default is not need digest
- */
- private String digest;
+ private int timeToLiveSeconds = 60;
/**
* RegCenter for zookeeper.
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/zookeeper/ZookeeperRegistryCenter.java b/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/zookeeper/ZookeeperRegistryCenter.java
index 8f1c2590b69ec..9f369b369799e 100644
--- a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/zookeeper/ZookeeperRegistryCenter.java
+++ b/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/zookeeper/ZookeeperRegistryCenter.java
@@ -65,13 +65,13 @@ public ZookeeperRegistryCenter(final ZookeeperConfiguration zkConfig) {
private CuratorFramework buildCuratorClient(final ZookeeperConfiguration zkConfig) {
CuratorFrameworkFactory.Builder builder = CuratorFrameworkFactory.builder()
.connectString(zkConfig.getServerLists())
- .retryPolicy(new ExponentialBackoffRetry(zkConfig.getBaseSleepTimeMilliseconds(), zkConfig.getMaxRetries(), zkConfig.getMaxSleepTimeMilliseconds()))
+ .retryPolicy(new ExponentialBackoffRetry(zkConfig.getRetryIntervalMilliseconds(), zkConfig.getMaxRetries(), zkConfig.getRetryIntervalMilliseconds() * zkConfig.getMaxRetries()))
.namespace(zkConfig.getNamespace());
- if (0 != zkConfig.getSessionTimeoutMilliseconds()) {
- builder.sessionTimeoutMs(zkConfig.getSessionTimeoutMilliseconds());
+ if (0 != zkConfig.getTimeToLiveSeconds()) {
+ builder.sessionTimeoutMs(zkConfig.getTimeToLiveSeconds() * 1000);
}
- if (0 != zkConfig.getConnectionTimeoutMilliseconds()) {
- builder.connectionTimeoutMs(zkConfig.getConnectionTimeoutMilliseconds());
+ if (0 != zkConfig.getOperationTimeoutMilliseconds()) {
+ builder.connectionTimeoutMs(zkConfig.getOperationTimeoutMilliseconds());
}
if (!Strings.isNullOrEmpty(zkConfig.getDigest())) {
builder.authorization("digest", zkConfig.getDigest().getBytes(Charsets.UTF_8))
@@ -94,7 +94,7 @@ public List getAclForPath(final String path) {
private void initCuratorClient(final ZookeeperConfiguration zkConfig) {
client.start();
try {
- if (!client.blockUntilConnected(zkConfig.getMaxSleepTimeMilliseconds() * zkConfig.getMaxRetries(), TimeUnit.MILLISECONDS)) {
+ if (!client.blockUntilConnected(zkConfig.getRetryIntervalMilliseconds() * zkConfig.getMaxRetries(), TimeUnit.MILLISECONDS)) {
client.close();
throw new OperationTimeoutException();
}
From dd4565fd71cebe444c57a8030395f68dc232bc5c Mon Sep 17 00:00:00 2001
From: terrymanu
Date: Wed, 17 Oct 2018 14:36:32 +0800
Subject: [PATCH 22/30] for #1215, abstract RegistryCenterConfiguration
---
.../reg/api/RegistryCenterConfiguration.java | 49 +++++++++++++++++++
.../reg/etcd/EtcdConfiguration.java | 24 +++++----
.../reg/zookeeper/ZookeeperConfiguration.java | 21 +-------
3 files changed, 62 insertions(+), 32 deletions(-)
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/api/RegistryCenterConfiguration.java b/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/api/RegistryCenterConfiguration.java
index d6e0f20f1ffe3..22d901cb8b6d3 100644
--- a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/api/RegistryCenterConfiguration.java
+++ b/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/api/RegistryCenterConfiguration.java
@@ -23,4 +23,53 @@
* @author zhangliang
*/
public interface RegistryCenterConfiguration {
+
+ /**
+ * Get server list of registry center.
+ *
+ * @return server list of registry center
+ */
+ String getServerLists();
+
+ /**
+ * Get namespace of registry center.
+ *
+ * @return namespace of registry center
+ */
+ String getNamespace();
+
+ /**
+ * Get digest of registry center.
+ *
+ * @return digest of registry center
+ */
+ String getDigest();
+
+ /**
+ * Get operation timeout time in milliseconds.
+ *
+ * @return operation timeout time in milliseconds
+ */
+ int getOperationTimeoutMilliseconds();
+
+ /**
+ * Get max number of times to retry.
+ *
+ * @return max number of times to retry
+ */
+ int getMaxRetries();
+
+ /**
+ * Get time interval in milliseconds on each retry.
+ *
+ * @return time interval in milliseconds on each retry
+ */
+ int getRetryIntervalMilliseconds();
+
+ /**
+ * Get time to live in seconds of ephemeral keys.
+ *
+ * @return time to live in seconds of ephemeral keys
+ */
+ int getTimeToLiveSeconds();
}
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/etcd/EtcdConfiguration.java b/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/etcd/EtcdConfiguration.java
index 74752b3c2e6ed..aae574da7bb97 100644
--- a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/etcd/EtcdConfiguration.java
+++ b/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/etcd/EtcdConfiguration.java
@@ -22,7 +22,7 @@
import lombok.Setter;
/**
- * Etcd configuration.
+ * Registry center configuration for etcd.
*
* @author junxiong
*/
@@ -37,23 +37,21 @@ public final class EtcdConfiguration implements RegistryCenterConfiguration {
*/
private String serverLists;
- /**
- * Operation timeout time in milliseconds.
- */
private int operationTimeoutMilliseconds = 500;
- /**
- * Max number of times to retry.
- */
private int maxRetries = 3;
- /**
- * Time interval in milliseconds on each retry.
- */
private int retryIntervalMilliseconds = 200;
- /**
- * Time to live in seconds of ephemeral keys.
- */
private int timeToLiveSeconds = 60;
+
+ @Override
+ public String getNamespace() {
+ throw new UnsupportedOperationException("Cannot support namespace on ETCD");
+ }
+
+ @Override
+ public String getDigest() {
+ throw new UnsupportedOperationException("Cannot support digest on ETCD");
+ }
}
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/zookeeper/ZookeeperConfiguration.java b/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/zookeeper/ZookeeperConfiguration.java
index 8a8e6d4dc1d48..cdb4097e993b9 100644
--- a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/zookeeper/ZookeeperConfiguration.java
+++ b/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/zookeeper/ZookeeperConfiguration.java
@@ -22,7 +22,7 @@
import lombok.Setter;
/**
- * Zookeeper based registry center configuration.
+ * Registry center configuration for zookeeper.
*
* @author zhangliang
*/
@@ -37,36 +37,19 @@ public final class ZookeeperConfiguration implements RegistryCenterConfiguration
*/
private String serverLists;
- /**
- * Namespace of registry center.
- */
private String namespace;
/**
- * Digest for registry center.
- *
- *
Include ip address and port, multiple servers split by comma. Etc: {@code host1:2181,host2:2181}<\/p>.",
"type": "java.lang.String"
},
{
- "sourceType": "io.shardingsphere.orchestration.reg.zookeeper.ZookeeperConfiguration",
+ "sourceType": "io.shardingsphere.orchestration.reg.zookeeper.CuratorZookeeperConfiguration",
"name": "sharding.jdbc.config.orchestration.zookeeper.namespace",
"description": "Namespace of registry center.",
"type": "java.lang.String"
},
{
- "sourceType": "io.shardingsphere.orchestration.reg.zookeeper.ZookeeperConfiguration",
+ "sourceType": "io.shardingsphere.orchestration.reg.zookeeper.CuratorZookeeperConfiguration",
"name": "sharding.jdbc.config.orchestration.zookeeper.digest",
"description": "Digest for registry center.\n \n
Default is not need digest<\/p>.",
"type": "java.lang.String"
},
{
- "sourceType": "io.shardingsphere.orchestration.reg.zookeeper.ZookeeperConfiguration",
+ "sourceType": "io.shardingsphere.orchestration.reg.zookeeper.CuratorZookeeperConfiguration",
"defaultValue": 0,
"name": "sharding.jdbc.config.orchestration.zookeeper.operation-timeout-milliseconds",
"description": "Operation timeout time in milliseconds.",
"type": "java.lang.Integer"
},
{
- "sourceType": "io.shardingsphere.orchestration.reg.zookeeper.ZookeeperConfiguration",
+ "sourceType": "io.shardingsphere.orchestration.reg.zookeeper.CuratorZookeeperConfiguration",
"defaultValue": 3,
"name": "sharding.jdbc.config.orchestration.zookeeper.max-retries",
"description": "Max number of times to retry.",
"type": "java.lang.Integer"
},
{
- "sourceType": "io.shardingsphere.orchestration.reg.zookeeper.ZookeeperConfiguration",
+ "sourceType": "io.shardingsphere.orchestration.reg.zookeeper.CuratorZookeeperConfiguration",
"defaultValue": 1000,
"name": "sharding.jdbc.config.orchestration.zookeeper.retry-interval-milliseconds",
"description": "Time interval in milliseconds on each retry.",
"type": "java.lang.Integer"
},
{
- "sourceType": "io.shardingsphere.orchestration.reg.zookeeper.ZookeeperConfiguration",
+ "sourceType": "io.shardingsphere.orchestration.reg.zookeeper.CuratorZookeeperConfiguration",
"defaultValue": 0,
"name": "sharding.jdbc.config.orchestration.zookeeper.time-to-live-seconds",
"description": "Time to live in seconds of ephemeral keys.",
diff --git a/sharding-jdbc/sharding-jdbc-orchestration-spring/sharding-jdbc-orchestration-spring-namespace/src/main/java/io/shardingsphere/shardingjdbc/orchestration/spring/namespace/parser/RegBeanDefinitionParser.java b/sharding-jdbc/sharding-jdbc-orchestration-spring/sharding-jdbc-orchestration-spring-namespace/src/main/java/io/shardingsphere/shardingjdbc/orchestration/spring/namespace/parser/RegBeanDefinitionParser.java
index cbca58264508c..7c60d4429b983 100644
--- a/sharding-jdbc/sharding-jdbc-orchestration-spring/sharding-jdbc-orchestration-spring-namespace/src/main/java/io/shardingsphere/shardingjdbc/orchestration/spring/namespace/parser/RegBeanDefinitionParser.java
+++ b/sharding-jdbc/sharding-jdbc-orchestration-spring/sharding-jdbc-orchestration-spring-namespace/src/main/java/io/shardingsphere/shardingjdbc/orchestration/spring/namespace/parser/RegBeanDefinitionParser.java
@@ -19,7 +19,7 @@
import com.google.common.base.Strings;
import io.shardingsphere.orchestration.reg.etcd.EtcdConfiguration;
-import io.shardingsphere.orchestration.reg.zookeeper.ZookeeperConfiguration;
+import io.shardingsphere.orchestration.reg.zookeeper.CuratorZookeeperConfiguration;
import io.shardingsphere.shardingjdbc.orchestration.spring.namespace.constants.EtcdRegistryCenterBeanDefinitionParserTag;
import io.shardingsphere.shardingjdbc.orchestration.spring.namespace.constants.ZookeeperRegistryCenterBeanDefinitionParserTag;
import org.springframework.beans.factory.support.AbstractBeanDefinition;
@@ -41,7 +41,7 @@ protected AbstractBeanDefinition parseInternal(final Element element, final Pars
}
private AbstractBeanDefinition getZookeeperConfiguration(final Element element) {
- BeanDefinitionBuilder factory = BeanDefinitionBuilder.rootBeanDefinition(ZookeeperConfiguration.class);
+ BeanDefinitionBuilder factory = BeanDefinitionBuilder.rootBeanDefinition(CuratorZookeeperConfiguration.class);
addPropertyValueIfNotEmpty(ZookeeperRegistryCenterBeanDefinitionParserTag.SERVER_LISTS_TAG, "serverLists", element, factory);
addPropertyValueIfNotEmpty(ZookeeperRegistryCenterBeanDefinitionParserTag.NAMESPACE_TAG, "namespace", element, factory);
addPropertyValueIfNotEmpty(ZookeeperRegistryCenterBeanDefinitionParserTag.DIGEST_TAG, "digest", element, factory);
diff --git a/sharding-jdbc/sharding-jdbc-orchestration/pom.xml b/sharding-jdbc/sharding-jdbc-orchestration/pom.xml
index b80a1c72e0dec..5766c5490e216 100644
--- a/sharding-jdbc/sharding-jdbc-orchestration/pom.xml
+++ b/sharding-jdbc/sharding-jdbc-orchestration/pom.xml
@@ -21,6 +21,26 @@
sharding-orchestration-core${project.version}
+
+ io.shardingsphere
+ sharding-orchestration-reg-zookeeper-curator
+ ${project.version}
+
+
+ io.shardingsphere
+ sharding-orchestration-reg-native-zookeeper
+ ${project.version}
+
+
+ io.shardingsphere
+ sharding-orchestration-reg-etcd
+ ${project.version}
+
+
+ io.shardingsphere
+ sharding-core
+ ${project.version}
+ org.apache.curator
diff --git a/sharding-orchestration/sharding-orchestration-core/pom.xml b/sharding-orchestration/sharding-orchestration-core/pom.xml
index 8fbed546c60a6..679597d763014 100644
--- a/sharding-orchestration/sharding-orchestration-core/pom.xml
+++ b/sharding-orchestration/sharding-orchestration-core/pom.xml
@@ -13,7 +13,22 @@
io.shardingsphere
- sharding-orchestration-reg
+ sharding-orchestration-reg-api
+ ${project.version}
+
+
+ io.shardingsphere
+ sharding-orchestration-reg-zookeeper-curator
+ ${project.version}
+
+
+ io.shardingsphere
+ sharding-orchestration-reg-native-zookeeper
+ ${project.version}
+
+
+ io.shardingsphere
+ sharding-orchestration-reg-etcd${project.version}
diff --git a/sharding-orchestration/sharding-orchestration-core/src/main/java/io/shardingsphere/orchestration/internal/OrchestrationFacade.java b/sharding-orchestration/sharding-orchestration-core/src/main/java/io/shardingsphere/orchestration/internal/OrchestrationFacade.java
index b6b502aec3b43..6d9a30329140e 100644
--- a/sharding-orchestration/sharding-orchestration-core/src/main/java/io/shardingsphere/orchestration/internal/OrchestrationFacade.java
+++ b/sharding-orchestration/sharding-orchestration-core/src/main/java/io/shardingsphere/orchestration/internal/OrchestrationFacade.java
@@ -32,8 +32,9 @@
import io.shardingsphere.orchestration.reg.api.RegistryCenterConfiguration;
import io.shardingsphere.orchestration.reg.etcd.EtcdConfiguration;
import io.shardingsphere.orchestration.reg.etcd.EtcdRegistryCenter;
+import io.shardingsphere.orchestration.reg.newzk.NativeZookeeperConfiguration;
import io.shardingsphere.orchestration.reg.newzk.NewZookeeperRegistryCenter;
-import io.shardingsphere.orchestration.reg.zookeeper.ZookeeperConfiguration;
+import io.shardingsphere.orchestration.reg.zookeeper.CuratorZookeeperConfiguration;
import io.shardingsphere.orchestration.reg.zookeeper.ZookeeperRegistryCenter;
import io.shardingsphere.shardingjdbc.jdbc.core.datasource.MasterSlaveDataSource;
import lombok.Getter;
@@ -79,8 +80,11 @@ public OrchestrationFacade(final OrchestrationConfiguration orchestrationConfig)
private RegistryCenter createRegistryCenter(final RegistryCenterConfiguration regCenterConfig) {
Preconditions.checkNotNull(regCenterConfig, "Registry center configuration cannot be null.");
- if (regCenterConfig instanceof ZookeeperConfiguration) {
- return getZookeeperRegistryCenter((ZookeeperConfiguration) regCenterConfig);
+ if (regCenterConfig instanceof CuratorZookeeperConfiguration) {
+ return new ZookeeperRegistryCenter((CuratorZookeeperConfiguration) regCenterConfig);
+ }
+ if (regCenterConfig instanceof NativeZookeeperConfiguration) {
+ return new NewZookeeperRegistryCenter((NativeZookeeperConfiguration) regCenterConfig);
}
if (regCenterConfig instanceof EtcdConfiguration) {
return new EtcdRegistryCenter((EtcdConfiguration) regCenterConfig);
@@ -88,14 +92,6 @@ private RegistryCenter createRegistryCenter(final RegistryCenterConfiguration re
throw new UnsupportedOperationException(regCenterConfig.getClass().getName());
}
- private RegistryCenter getZookeeperRegistryCenter(final ZookeeperConfiguration regCenterConfig) {
- if (regCenterConfig.isUseNative()) {
- return new NewZookeeperRegistryCenter(regCenterConfig);
- } else {
- return new ZookeeperRegistryCenter(regCenterConfig);
- }
- }
-
/**
* Initialize for sharding orchestration.
*
diff --git a/sharding-orchestration/sharding-orchestration-core/src/main/java/io/shardingsphere/orchestration/yaml/YamlOrchestrationConfiguration.java b/sharding-orchestration/sharding-orchestration-core/src/main/java/io/shardingsphere/orchestration/yaml/YamlOrchestrationConfiguration.java
index 670ad603e1c12..053eb21fb8a99 100644
--- a/sharding-orchestration/sharding-orchestration-core/src/main/java/io/shardingsphere/orchestration/yaml/YamlOrchestrationConfiguration.java
+++ b/sharding-orchestration/sharding-orchestration-core/src/main/java/io/shardingsphere/orchestration/yaml/YamlOrchestrationConfiguration.java
@@ -20,7 +20,7 @@
import com.google.common.base.Preconditions;
import io.shardingsphere.orchestration.config.OrchestrationConfiguration;
import io.shardingsphere.orchestration.reg.etcd.EtcdConfiguration;
-import io.shardingsphere.orchestration.reg.zookeeper.ZookeeperConfiguration;
+import io.shardingsphere.orchestration.reg.zookeeper.CuratorZookeeperConfiguration;
import lombok.Getter;
import lombok.Setter;
@@ -38,7 +38,7 @@ public class YamlOrchestrationConfiguration {
private EtcdConfiguration etcd;
- private ZookeeperConfiguration zookeeper;
+ private CuratorZookeeperConfiguration zookeeper;
private boolean overwrite;
diff --git a/sharding-orchestration/sharding-orchestration-reg/pom.xml b/sharding-orchestration/sharding-orchestration-reg/pom.xml
index 78e0b91725c07..ccecfe1521132 100644
--- a/sharding-orchestration/sharding-orchestration-reg/pom.xml
+++ b/sharding-orchestration/sharding-orchestration-reg/pom.xml
@@ -9,6 +9,14 @@
4.0.0sharding-orchestration-reg
+ pom
+
+
+ sharding-orchestration-reg-api
+ sharding-orchestration-reg-zookeeper-curator
+ sharding-orchestration-reg-native-zookeeper
+ sharding-orchestration-reg-etcd
+
diff --git a/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-api/pom.xml b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-api/pom.xml
new file mode 100644
index 0000000000000..ae4de19bf03cf
--- /dev/null
+++ b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-api/pom.xml
@@ -0,0 +1,12 @@
+
+
+ 4.0.0
+
+ sharding-orchestration-reg
+ io.shardingsphere
+ 3.0.0.M5-SNAPSHOT
+
+ sharding-orchestration-reg-api
+
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/api/RegistryCenter.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-api/src/main/java/io/shardingsphere/orchestration/reg/api/RegistryCenter.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/api/RegistryCenter.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-api/src/main/java/io/shardingsphere/orchestration/reg/api/RegistryCenter.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/api/RegistryCenterConfiguration.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-api/src/main/java/io/shardingsphere/orchestration/reg/api/RegistryCenterConfiguration.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/api/RegistryCenterConfiguration.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-api/src/main/java/io/shardingsphere/orchestration/reg/api/RegistryCenterConfiguration.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/exception/RegException.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-api/src/main/java/io/shardingsphere/orchestration/reg/exception/RegException.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/exception/RegException.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-api/src/main/java/io/shardingsphere/orchestration/reg/exception/RegException.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/exception/RegExceptionHandler.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-api/src/main/java/io/shardingsphere/orchestration/reg/exception/RegExceptionHandler.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/exception/RegExceptionHandler.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-api/src/main/java/io/shardingsphere/orchestration/reg/exception/RegExceptionHandler.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/listener/DataChangedEvent.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-api/src/main/java/io/shardingsphere/orchestration/reg/listener/DataChangedEvent.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/listener/DataChangedEvent.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-api/src/main/java/io/shardingsphere/orchestration/reg/listener/DataChangedEvent.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/listener/EventListener.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-api/src/main/java/io/shardingsphere/orchestration/reg/listener/EventListener.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/listener/EventListener.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-api/src/main/java/io/shardingsphere/orchestration/reg/listener/EventListener.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-etcd/pom.xml b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-etcd/pom.xml
new file mode 100644
index 0000000000000..ab21e5a45c83f
--- /dev/null
+++ b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-etcd/pom.xml
@@ -0,0 +1,20 @@
+
+
+ 4.0.0
+
+ sharding-orchestration-reg
+ io.shardingsphere
+ 3.0.0.M5-SNAPSHOT
+
+ sharding-orchestration-reg-etcd
+
+
+
+ io.shardingsphere
+ sharding-orchestration-reg-api
+ ${project.version}
+
+
+
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/etcd/EtcdConfiguration.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-etcd/src/main/java/io/shardingsphere/orchestration/reg/etcd/EtcdConfiguration.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/etcd/EtcdConfiguration.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-etcd/src/main/java/io/shardingsphere/orchestration/reg/etcd/EtcdConfiguration.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/etcd/EtcdRegistryCenter.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-etcd/src/main/java/io/shardingsphere/orchestration/reg/etcd/EtcdRegistryCenter.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/etcd/EtcdRegistryCenter.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-etcd/src/main/java/io/shardingsphere/orchestration/reg/etcd/EtcdRegistryCenter.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/etcd/internal/channel/EtcdChannelFactory.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-etcd/src/main/java/io/shardingsphere/orchestration/reg/etcd/internal/channel/EtcdChannelFactory.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/etcd/internal/channel/EtcdChannelFactory.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-etcd/src/main/java/io/shardingsphere/orchestration/reg/etcd/internal/channel/EtcdChannelFactory.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/etcd/internal/channel/EtcdNameSolverFactory.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-etcd/src/main/java/io/shardingsphere/orchestration/reg/etcd/internal/channel/EtcdNameSolverFactory.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/etcd/internal/channel/EtcdNameSolverFactory.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-etcd/src/main/java/io/shardingsphere/orchestration/reg/etcd/internal/channel/EtcdNameSolverFactory.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/etcd/internal/keepalive/KeepAlive.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-etcd/src/main/java/io/shardingsphere/orchestration/reg/etcd/internal/keepalive/KeepAlive.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/etcd/internal/keepalive/KeepAlive.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-etcd/src/main/java/io/shardingsphere/orchestration/reg/etcd/internal/keepalive/KeepAlive.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/etcd/internal/retry/EtcdRetryEngine.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-etcd/src/main/java/io/shardingsphere/orchestration/reg/etcd/internal/retry/EtcdRetryEngine.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/etcd/internal/retry/EtcdRetryEngine.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-etcd/src/main/java/io/shardingsphere/orchestration/reg/etcd/internal/retry/EtcdRetryEngine.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/etcd/internal/watcher/EtcdWatchStreamObserver.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-etcd/src/main/java/io/shardingsphere/orchestration/reg/etcd/internal/watcher/EtcdWatchStreamObserver.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/etcd/internal/watcher/EtcdWatchStreamObserver.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-etcd/src/main/java/io/shardingsphere/orchestration/reg/etcd/internal/watcher/EtcdWatchStreamObserver.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/proto/etcd/auth/authpb/auth.proto b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-etcd/src/main/proto/etcd/auth/authpb/auth.proto
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/proto/etcd/auth/authpb/auth.proto
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-etcd/src/main/proto/etcd/auth/authpb/auth.proto
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/proto/etcd/etcdserver/etcdserverpb/rpc.proto b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-etcd/src/main/proto/etcd/etcdserver/etcdserverpb/rpc.proto
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/proto/etcd/etcdserver/etcdserverpb/rpc.proto
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-etcd/src/main/proto/etcd/etcdserver/etcdserverpb/rpc.proto
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/proto/etcd/mvcc/mvccpb/kv.proto b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-etcd/src/main/proto/etcd/mvcc/mvccpb/kv.proto
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/proto/etcd/mvcc/mvccpb/kv.proto
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-etcd/src/main/proto/etcd/mvcc/mvccpb/kv.proto
diff --git a/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/pom.xml b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/pom.xml
new file mode 100644
index 0000000000000..a57e6b54cc6ef
--- /dev/null
+++ b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/pom.xml
@@ -0,0 +1,20 @@
+
+
+ 4.0.0
+
+ sharding-orchestration-reg
+ io.shardingsphere
+ 3.0.0.M5-SNAPSHOT
+
+ sharding-orchestration-reg-native-zookeeper
+
+
+
+ io.shardingsphere
+ sharding-orchestration-reg-api
+ ${project.version}
+
+
+
diff --git a/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/NativeZookeeperConfiguration.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/NativeZookeeperConfiguration.java
new file mode 100644
index 0000000000000..140d006b733fc
--- /dev/null
+++ b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/NativeZookeeperConfiguration.java
@@ -0,0 +1,54 @@
+/*
+ * Copyright 2016-2018 shardingsphere.io.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
Include ip address and port, multiple servers split by comma. Etc: {@code host1:2181,host2:2181}
+ */
+ private String serverLists;
+
+ private String namespace;
+
+ /**
+ * Default is not need digest.
+ */
+ private String digest;
+
+ private int operationTimeoutMilliseconds;
+
+ private int maxRetries = 3;
+
+ private int retryIntervalMilliseconds = 1000;
+
+ private int timeToLiveSeconds = 60;
+}
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/NewZookeeperRegistryCenter.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/NewZookeeperRegistryCenter.java
similarity index 96%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/NewZookeeperRegistryCenter.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/NewZookeeperRegistryCenter.java
index 693a1aceb06f9..4c37d18e45183 100644
--- a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/NewZookeeperRegistryCenter.java
+++ b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/NewZookeeperRegistryCenter.java
@@ -31,7 +31,6 @@
import io.shardingsphere.orchestration.reg.newzk.client.zookeeper.ClientFactory;
import io.shardingsphere.orchestration.reg.newzk.client.zookeeper.section.StrategyType;
import io.shardingsphere.orchestration.reg.newzk.client.zookeeper.section.ZookeeperEventListener;
-import io.shardingsphere.orchestration.reg.zookeeper.ZookeeperConfiguration;
import org.apache.zookeeper.CreateMode;
import org.apache.zookeeper.KeeperException;
import org.apache.zookeeper.WatchedEvent;
@@ -47,7 +46,7 @@
import java.util.concurrent.TimeUnit;
/**
- * Zookeeper native based registry center.
+ * Registry center for native zookeeper.
*
* @author lidongbo
*/
@@ -57,12 +56,12 @@ public final class NewZookeeperRegistryCenter implements RegistryCenter {
private final Map caches;
- public NewZookeeperRegistryCenter(final ZookeeperConfiguration zkConfig) {
+ public NewZookeeperRegistryCenter(final NativeZookeeperConfiguration zkConfig) {
client = initClient(buildClientFactory(zkConfig), zkConfig);
caches = new HashMap<>();
}
- private ClientFactory buildClientFactory(final ZookeeperConfiguration zkConfig) {
+ private ClientFactory buildClientFactory(final NativeZookeeperConfiguration zkConfig) {
ClientFactory result = new ClientFactory();
result.setClientNamespace(zkConfig.getNamespace()).newClient(zkConfig.getServerLists(), zkConfig.getTimeToLiveSeconds() * 1000)
.setRetryPolicy(new DelayRetryPolicy(zkConfig.getRetryIntervalMilliseconds(), zkConfig.getMaxRetries(), zkConfig.getRetryIntervalMilliseconds()));
@@ -72,7 +71,7 @@ private ClientFactory buildClientFactory(final ZookeeperConfiguration zkConfig)
return result;
}
- private IClient initClient(final ClientFactory clientFactory, final ZookeeperConfiguration zkConfig) {
+ private IClient initClient(final ClientFactory clientFactory, final NativeZookeeperConfiguration zkConfig) {
IClient result = null;
try {
// TODO There is a bug when the start time is very short, and I haven't found the reason yet
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/action/ContentionCallback.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/action/ContentionCallback.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/action/ContentionCallback.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/action/ContentionCallback.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/action/IAction.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/action/IAction.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/action/IAction.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/action/IAction.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/action/IClient.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/action/IClient.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/action/IClient.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/action/IClient.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/action/IExecStrategy.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/action/IExecStrategy.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/action/IExecStrategy.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/action/IExecStrategy.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/action/IGroupAction.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/action/IGroupAction.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/action/IGroupAction.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/action/IGroupAction.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/action/IProvider.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/action/IProvider.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/action/IProvider.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/action/IProvider.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/action/ITransactionProvider.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/action/ITransactionProvider.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/action/ITransactionProvider.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/action/ITransactionProvider.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/cache/CacheStrategy.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/cache/CacheStrategy.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/cache/CacheStrategy.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/cache/CacheStrategy.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/cache/PathNode.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/cache/PathNode.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/cache/PathNode.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/cache/PathNode.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/cache/PathResolve.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/cache/PathResolve.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/cache/PathResolve.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/cache/PathResolve.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/cache/PathStatus.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/cache/PathStatus.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/cache/PathStatus.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/cache/PathStatus.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/cache/PathTree.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/cache/PathTree.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/cache/PathTree.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/cache/PathTree.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/election/LeaderElection.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/election/LeaderElection.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/election/LeaderElection.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/election/LeaderElection.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/retry/AsyncRetryCenter.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/retry/AsyncRetryCenter.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/retry/AsyncRetryCenter.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/retry/AsyncRetryCenter.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/retry/DelayPolicyExecutor.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/retry/DelayPolicyExecutor.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/retry/DelayPolicyExecutor.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/retry/DelayPolicyExecutor.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/retry/DelayRetryPolicy.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/retry/DelayRetryPolicy.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/retry/DelayRetryPolicy.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/retry/DelayRetryPolicy.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/retry/RetryCallable.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/retry/RetryCallable.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/retry/RetryCallable.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/retry/RetryCallable.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/retry/RetryResultCallable.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/retry/RetryResultCallable.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/retry/RetryResultCallable.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/retry/RetryResultCallable.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/retry/RetryThread.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/retry/RetryThread.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/retry/RetryThread.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/retry/RetryThread.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/utility/PathUtil.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/utility/PathUtil.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/utility/PathUtil.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/utility/PathUtil.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/utility/ZookeeperConstants.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/utility/ZookeeperConstants.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/utility/ZookeeperConstants.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/utility/ZookeeperConstants.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/CacheClient.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/CacheClient.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/CacheClient.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/CacheClient.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/ClientFactory.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/ClientFactory.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/ClientFactory.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/ClientFactory.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/UsualClient.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/UsualClient.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/UsualClient.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/UsualClient.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/base/BaseClient.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/base/BaseClient.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/base/BaseClient.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/base/BaseClient.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/base/BaseClientFactory.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/base/BaseClientFactory.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/base/BaseClientFactory.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/base/BaseClientFactory.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/base/BaseContext.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/base/BaseContext.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/base/BaseContext.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/base/BaseContext.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/base/BaseOperation.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/base/BaseOperation.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/base/BaseOperation.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/base/BaseOperation.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/base/Holder.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/base/Holder.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/base/Holder.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/base/Holder.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/operation/CreateAllNeedOperation.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/operation/CreateAllNeedOperation.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/operation/CreateAllNeedOperation.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/operation/CreateAllNeedOperation.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/operation/CreateCurrentOperation.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/operation/CreateCurrentOperation.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/operation/CreateCurrentOperation.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/operation/CreateCurrentOperation.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/operation/DeleteAllChildrenOperation.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/operation/DeleteAllChildrenOperation.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/operation/DeleteAllChildrenOperation.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/operation/DeleteAllChildrenOperation.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/operation/DeleteCurrentBranchOperation.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/operation/DeleteCurrentBranchOperation.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/operation/DeleteCurrentBranchOperation.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/operation/DeleteCurrentBranchOperation.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/operation/DeleteCurrentOperation.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/operation/DeleteCurrentOperation.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/operation/DeleteCurrentOperation.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/operation/DeleteCurrentOperation.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/operation/UpdateOperation.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/operation/UpdateOperation.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/operation/UpdateOperation.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/operation/UpdateOperation.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/provider/BaseProvider.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/provider/BaseProvider.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/provider/BaseProvider.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/provider/BaseProvider.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/provider/TransactionProvider.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/provider/TransactionProvider.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/provider/TransactionProvider.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/provider/TransactionProvider.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/section/ClientContext.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/section/ClientContext.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/section/ClientContext.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/section/ClientContext.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/section/ClientTask.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/section/ClientTask.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/section/ClientTask.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/section/ClientTask.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/section/Connection.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/section/Connection.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/section/Connection.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/section/Connection.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/section/StrategyType.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/section/StrategyType.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/section/StrategyType.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/section/StrategyType.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/section/WatcherCreator.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/section/WatcherCreator.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/section/WatcherCreator.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/section/WatcherCreator.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/section/ZookeeperEventListener.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/section/ZookeeperEventListener.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/section/ZookeeperEventListener.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/section/ZookeeperEventListener.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/strategy/AsyncRetryStrategy.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/strategy/AsyncRetryStrategy.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/strategy/AsyncRetryStrategy.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/strategy/AsyncRetryStrategy.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/strategy/BaseStrategy.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/strategy/BaseStrategy.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/strategy/BaseStrategy.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/strategy/BaseStrategy.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/strategy/ContentionStrategy.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/strategy/ContentionStrategy.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/strategy/ContentionStrategy.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/strategy/ContentionStrategy.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/strategy/SyncRetryStrategy.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/strategy/SyncRetryStrategy.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/strategy/SyncRetryStrategy.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/strategy/SyncRetryStrategy.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/strategy/TransactionContendStrategy.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/strategy/TransactionContendStrategy.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/strategy/TransactionContendStrategy.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/strategy/TransactionContendStrategy.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/strategy/UsualStrategy.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/strategy/UsualStrategy.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/strategy/UsualStrategy.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/strategy/UsualStrategy.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/transaction/BaseTransaction.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/transaction/BaseTransaction.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/transaction/BaseTransaction.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/transaction/BaseTransaction.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/transaction/ZooKeeperTransaction.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/transaction/ZooKeeperTransaction.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/transaction/ZooKeeperTransaction.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/main/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/transaction/ZooKeeperTransaction.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/test/java/io/shardingsphere/orchestration/reg/newzk/AllNewzkTests.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/test/java/io/shardingsphere/orchestration/reg/newzk/AllNewzkTests.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/test/java/io/shardingsphere/orchestration/reg/newzk/AllNewzkTests.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/test/java/io/shardingsphere/orchestration/reg/newzk/AllNewzkTests.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/test/java/io/shardingsphere/orchestration/reg/newzk/client/cache/PathResolveTest.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/test/java/io/shardingsphere/orchestration/reg/newzk/client/cache/PathResolveTest.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/test/java/io/shardingsphere/orchestration/reg/newzk/client/cache/PathResolveTest.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/test/java/io/shardingsphere/orchestration/reg/newzk/client/cache/PathResolveTest.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/test/java/io/shardingsphere/orchestration/reg/newzk/client/cache/PathTreeTest.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/test/java/io/shardingsphere/orchestration/reg/newzk/client/cache/PathTreeTest.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/test/java/io/shardingsphere/orchestration/reg/newzk/client/cache/PathTreeTest.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/test/java/io/shardingsphere/orchestration/reg/newzk/client/cache/PathTreeTest.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/test/java/io/shardingsphere/orchestration/reg/newzk/client/retry/TestCallable.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/test/java/io/shardingsphere/orchestration/reg/newzk/client/retry/TestCallable.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/test/java/io/shardingsphere/orchestration/reg/newzk/client/retry/TestCallable.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/test/java/io/shardingsphere/orchestration/reg/newzk/client/retry/TestCallable.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/test/java/io/shardingsphere/orchestration/reg/newzk/client/retry/TestResultCallable.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/test/java/io/shardingsphere/orchestration/reg/newzk/client/retry/TestResultCallable.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/test/java/io/shardingsphere/orchestration/reg/newzk/client/retry/TestResultCallable.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/test/java/io/shardingsphere/orchestration/reg/newzk/client/retry/TestResultCallable.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/test/java/io/shardingsphere/orchestration/reg/newzk/client/util/EmbedTestingServer.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/test/java/io/shardingsphere/orchestration/reg/newzk/client/util/EmbedTestingServer.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/test/java/io/shardingsphere/orchestration/reg/newzk/client/util/EmbedTestingServer.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/test/java/io/shardingsphere/orchestration/reg/newzk/client/util/EmbedTestingServer.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/test/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/AllBaseTests.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/test/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/AllBaseTests.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/test/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/AllBaseTests.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/test/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/AllBaseTests.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/test/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/SyncRetryStrategyTest.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/test/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/SyncRetryStrategyTest.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/test/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/SyncRetryStrategyTest.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/test/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/SyncRetryStrategyTest.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/test/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/UsualClientTest.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/test/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/UsualClientTest.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/test/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/UsualClientTest.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/test/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/UsualClientTest.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/test/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/base/BaseClientTest.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/test/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/base/BaseClientTest.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/test/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/base/BaseClientTest.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/test/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/base/BaseClientTest.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/test/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/base/BaseTest.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/test/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/base/BaseTest.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/test/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/base/BaseTest.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/test/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/base/BaseTest.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/test/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/base/StartWaitTest.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/test/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/base/StartWaitTest.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/test/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/base/StartWaitTest.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/test/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/base/StartWaitTest.java
index f1387b222b553..3593ad1af6f43 100644
--- a/sharding-orchestration/sharding-orchestration-reg/src/test/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/base/StartWaitTest.java
+++ b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/test/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/base/StartWaitTest.java
@@ -17,9 +17,9 @@
package io.shardingsphere.orchestration.reg.newzk.client.zookeeper.base;
-import io.shardingsphere.orchestration.reg.newzk.client.zookeeper.section.ClientContext;
import io.shardingsphere.orchestration.reg.newzk.client.action.IClient;
import io.shardingsphere.orchestration.reg.newzk.client.util.EmbedTestingServer;
+import io.shardingsphere.orchestration.reg.newzk.client.zookeeper.section.ClientContext;
import org.junit.Assert;
import org.junit.Before;
import org.junit.Test;
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/test/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/base/TestClient.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/test/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/base/TestClient.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/test/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/base/TestClient.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/test/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/base/TestClient.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/test/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/base/TestHolder.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/test/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/base/TestHolder.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/test/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/base/TestHolder.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/test/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/base/TestHolder.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/test/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/base/TestSupport.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/test/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/base/TestSupport.java
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/test/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/base/TestSupport.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/test/java/io/shardingsphere/orchestration/reg/newzk/client/zookeeper/base/TestSupport.java
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/test/resources/logback-test.xml b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/test/resources/logback-test.xml
similarity index 100%
rename from sharding-orchestration/sharding-orchestration-reg/src/test/resources/logback-test.xml
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-native-zookeeper/src/test/resources/logback-test.xml
diff --git a/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-zookeeper-curator/pom.xml b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-zookeeper-curator/pom.xml
new file mode 100644
index 0000000000000..8e5dffe4e53da
--- /dev/null
+++ b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-zookeeper-curator/pom.xml
@@ -0,0 +1,20 @@
+
+
+ 4.0.0
+
+ sharding-orchestration-reg
+ io.shardingsphere
+ 3.0.0.M5-SNAPSHOT
+
+ sharding-orchestration-reg-zookeeper-curator
+
+
+
+ io.shardingsphere
+ sharding-orchestration-reg-api
+ ${project.version}
+
+
+
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/zookeeper/ZookeeperConfiguration.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-zookeeper-curator/src/main/java/io/shardingsphere/orchestration/reg/zookeeper/CuratorZookeeperConfiguration.java
similarity index 83%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/zookeeper/ZookeeperConfiguration.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-zookeeper-curator/src/main/java/io/shardingsphere/orchestration/reg/zookeeper/CuratorZookeeperConfiguration.java
index cdb4097e993b9..d1cd3bc2b0495 100644
--- a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/zookeeper/ZookeeperConfiguration.java
+++ b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-zookeeper-curator/src/main/java/io/shardingsphere/orchestration/reg/zookeeper/CuratorZookeeperConfiguration.java
@@ -22,13 +22,13 @@
import lombok.Setter;
/**
- * Registry center configuration for zookeeper.
+ * Registry center configuration for zookeeper with curator.
*
* @author zhangliang
*/
@Getter
@Setter
-public final class ZookeeperConfiguration implements RegistryCenterConfiguration {
+public final class CuratorZookeeperConfiguration implements RegistryCenterConfiguration {
/**
* Zookeeper server list.
@@ -51,11 +51,4 @@ public final class ZookeeperConfiguration implements RegistryCenterConfiguration
private int retryIntervalMilliseconds = 1000;
private int timeToLiveSeconds = 60;
-
- /**
- * RegCenter for zookeeper.
- *
- *
Default is ZookeeperRegistryCenter
- */
- private boolean useNative;
}
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/zookeeper/ZookeeperRegistryCenter.java b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-zookeeper-curator/src/main/java/io/shardingsphere/orchestration/reg/zookeeper/ZookeeperRegistryCenter.java
similarity index 97%
rename from sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/zookeeper/ZookeeperRegistryCenter.java
rename to sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-zookeeper-curator/src/main/java/io/shardingsphere/orchestration/reg/zookeeper/ZookeeperRegistryCenter.java
index 9f369b369799e..d2c83f0b52d05 100644
--- a/sharding-orchestration/sharding-orchestration-reg/src/main/java/io/shardingsphere/orchestration/reg/zookeeper/ZookeeperRegistryCenter.java
+++ b/sharding-orchestration/sharding-orchestration-reg/sharding-orchestration-reg-zookeeper-curator/src/main/java/io/shardingsphere/orchestration/reg/zookeeper/ZookeeperRegistryCenter.java
@@ -47,7 +47,7 @@
import java.util.concurrent.TimeUnit;
/**
- * Zookeeper based registry center.
+ * Registry center for zookeeper with curator.
*
* @author zhangliang
*/
@@ -57,12 +57,12 @@ public final class ZookeeperRegistryCenter implements RegistryCenter {
private final Map caches = new HashMap<>();
- public ZookeeperRegistryCenter(final ZookeeperConfiguration zkConfig) {
+ public ZookeeperRegistryCenter(final CuratorZookeeperConfiguration zkConfig) {
client = buildCuratorClient(zkConfig);
initCuratorClient(zkConfig);
}
- private CuratorFramework buildCuratorClient(final ZookeeperConfiguration zkConfig) {
+ private CuratorFramework buildCuratorClient(final CuratorZookeeperConfiguration zkConfig) {
CuratorFrameworkFactory.Builder builder = CuratorFrameworkFactory.builder()
.connectString(zkConfig.getServerLists())
.retryPolicy(new ExponentialBackoffRetry(zkConfig.getRetryIntervalMilliseconds(), zkConfig.getMaxRetries(), zkConfig.getRetryIntervalMilliseconds() * zkConfig.getMaxRetries()))
@@ -91,7 +91,7 @@ public List getAclForPath(final String path) {
return builder.build();
}
- private void initCuratorClient(final ZookeeperConfiguration zkConfig) {
+ private void initCuratorClient(final CuratorZookeeperConfiguration zkConfig) {
client.start();
try {
if (!client.blockUntilConnected(zkConfig.getRetryIntervalMilliseconds() * zkConfig.getMaxRetries(), TimeUnit.MILLISECONDS)) {
diff --git a/sharding-orchestration/sharding-orchestration-reg/src/test/java/io/shardingsphere/orchestration/AllTests.java b/sharding-orchestration/sharding-orchestration-reg/src/test/java/io/shardingsphere/orchestration/AllTests.java
deleted file mode 100644
index 3caa14bd21de1..0000000000000
--- a/sharding-orchestration/sharding-orchestration-reg/src/test/java/io/shardingsphere/orchestration/AllTests.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- * Copyright 2016-2018 shardingsphere.io.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *