This is an automated email from the ASF dual-hosted git repository.
victory pushed a commit to branch dev-metadata
in repository https://gitbox.apache.org/repos/asf/incubator-dubbo.git
The following commit(s) were added to refs/heads/dev-metadata by this push:
new d4d827e remove Provider and ConsumerMetataIdentifier
d4d827e is described below
commit d4d827e11c7ac832ec60e087f92f30f93fa1d478
Author: cvictory <[email protected]>
AuthorDate: Mon Dec 10 16:03:14 2018 +0800
remove Provider and ConsumerMetataIdentifier
---
.../identifier/ConsumerMetadataIdentifier.java | 54 ----------------------
.../metadata/identifier/MetadataIdentifier.java | 21 ++++++---
.../identifier/ProviderMetadataIdentifier.java | 39 ----------------
.../integration/MetadataReportService.java | 12 ++---
.../dubbo/metadata/store/MetadataReport.java | 7 ++-
.../metadata/support/AbstractMetadataReport.java | 24 +++++-----
.../integration/MetadataReportServiceTest.java | 6 +--
.../store/test/JTestMetadataReport4Test.java | 10 ++--
.../support/AbstractMetadataReportFactoryTest.java | 7 ++-
.../support/AbstractMetadataReportTest.java | 32 ++++++-------
.../metadata/store/redis/RedisMetadataReport.java | 7 +--
.../store/redis/RedisMetadataReportTest.java | 27 +++++++----
.../store/zookeeper/ZookeeperMetadataReport.java | 6 +--
.../zookeeper/ZookeeperMetadataReportTest.java | 27 ++++++-----
14 files changed, 94 insertions(+), 185 deletions(-)
diff --git
a/dubbo-metadata-report/dubbo-metadata-report-api/src/main/java/org/apache/dubbo/metadata/identifier/ConsumerMetadataIdentifier.java
b/dubbo-metadata-report/dubbo-metadata-report-api/src/main/java/org/apache/dubbo/metadata/identifier/ConsumerMetadataIdentifier.java
deleted file mode 100644
index 572fb99..0000000
---
a/dubbo-metadata-report/dubbo-metadata-report-api/src/main/java/org/apache/dubbo/metadata/identifier/ConsumerMetadataIdentifier.java
+++ /dev/null
@@ -1,54 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You 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.
- */
-package org.apache.dubbo.metadata.identifier;
-
-import org.apache.dubbo.common.Constants;
-import org.apache.dubbo.common.URL;
-
-/**
- * 2018/10/25
- */
-public class ConsumerMetadataIdentifier extends MetadataIdentifier {
-
- public ConsumerMetadataIdentifier() {
- }
-
- public ConsumerMetadataIdentifier(String serviceInterface, String version,
String group, String application) {
- super(serviceInterface, version, group, Constants.CONSUMER_SIDE);
- this.application = application;
- }
-
- public ConsumerMetadataIdentifier(URL url) {
- super(url);
- setSide(Constants.CONSUMER_SIDE);
- setApplication(url.getParameter(Constants.APPLICATION_KEY));
- }
-
- private String application;
-
- protected String getPathSegment() {
- return Constants.PATH_SEPARATOR + application;
- }
-
- public String getApplication() {
- return application;
- }
-
- public void setApplication(String application) {
- this.application = application;
- }
-}
diff --git
a/dubbo-metadata-report/dubbo-metadata-report-api/src/main/java/org/apache/dubbo/metadata/identifier/MetadataIdentifier.java
b/dubbo-metadata-report/dubbo-metadata-report-api/src/main/java/org/apache/dubbo/metadata/identifier/MetadataIdentifier.java
index 222d04c..85135a0 100644
---
a/dubbo-metadata-report/dubbo-metadata-report-api/src/main/java/org/apache/dubbo/metadata/identifier/MetadataIdentifier.java
+++
b/dubbo-metadata-report/dubbo-metadata-report-api/src/main/java/org/apache/dubbo/metadata/identifier/MetadataIdentifier.java
@@ -30,15 +30,17 @@ public class MetadataIdentifier {
private String version;
private String group;
private String side;
+ private String application;
public MetadataIdentifier() {
}
- public MetadataIdentifier(String serviceInterface, String version, String
group, String side) {
+ public MetadataIdentifier(String serviceInterface, String version, String
group, String side, String application) {
this.serviceInterface = serviceInterface;
this.version = version;
this.group = group;
this.side = side;
+ this.application = application;
}
public MetadataIdentifier(URL url) {
@@ -46,6 +48,7 @@ public class MetadataIdentifier {
this.version = url.getParameter(Constants.VERSION_KEY);
this.group = url.getParameter(Constants.GROUP_KEY);
this.side = url.getParameter(Constants.SIDE_KEY);
+ setApplication(url.getParameter(Constants.APPLICATION_KEY));
}
public String getUniqueKey(KeyTypeEnum keyType) {
@@ -56,7 +59,7 @@ public class MetadataIdentifier {
}
public String getIdentifierKey() {
- return serviceInterface + SEPARATOR + (version == null ? "" : version
+ SEPARATOR) + (group == null ? "" : group + SEPARATOR) + side;
+ return serviceInterface + SEPARATOR + (version == null ? "" : version
+ SEPARATOR) + (group == null ? "" : group + SEPARATOR) + side + SEPARATOR +
application;
}
private String getFilePathKey() {
@@ -65,7 +68,7 @@ public class MetadataIdentifier {
public String getFilePathKey(String pathTag) {
return toServicePath() + Constants.PATH_SEPARATOR + pathTag +
Constants.PATH_SEPARATOR + (version == null ? "" : (version +
Constants.PATH_SEPARATOR))
- + (group == null ? "" : (group + Constants.PATH_SEPARATOR)) +
side + getPathSegment();
+ + (group == null ? "" : (group + Constants.PATH_SEPARATOR)) +
side + getApplication();
}
private String toServicePath() {
@@ -75,10 +78,6 @@ public class MetadataIdentifier {
return URL.encode(serviceInterface);
}
- protected String getPathSegment() {
- return "";
- }
-
public String getServiceInterface() {
return serviceInterface;
@@ -112,6 +111,14 @@ public class MetadataIdentifier {
this.side = side;
}
+ public String getApplication() {
+ return application;
+ }
+
+ public void setApplication(String application) {
+ this.application = application;
+ }
+
public static enum KeyTypeEnum {
PATH, UNIQUE_KEY
}
diff --git
a/dubbo-metadata-report/dubbo-metadata-report-api/src/main/java/org/apache/dubbo/metadata/identifier/ProviderMetadataIdentifier.java
b/dubbo-metadata-report/dubbo-metadata-report-api/src/main/java/org/apache/dubbo/metadata/identifier/ProviderMetadataIdentifier.java
deleted file mode 100644
index 7d4da11..0000000
---
a/dubbo-metadata-report/dubbo-metadata-report-api/src/main/java/org/apache/dubbo/metadata/identifier/ProviderMetadataIdentifier.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You 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.
- */
-package org.apache.dubbo.metadata.identifier;
-
-import org.apache.dubbo.common.Constants;
-import org.apache.dubbo.common.URL;
-
-/**
- * 2018/10/25
- */
-public class ProviderMetadataIdentifier extends MetadataIdentifier {
-
- public ProviderMetadataIdentifier() {
-
- }
-
- public ProviderMetadataIdentifier(String serviceInterface, String version,
String group) {
- super(serviceInterface, version, group, Constants.PROVIDER_SIDE);
- }
-
- public ProviderMetadataIdentifier(URL url) {
- super(url);
- setSide(Constants.PROVIDER_SIDE);
- }
-}
diff --git
a/dubbo-metadata-report/dubbo-metadata-report-api/src/main/java/org/apache/dubbo/metadata/integration/MetadataReportService.java
b/dubbo-metadata-report/dubbo-metadata-report-api/src/main/java/org/apache/dubbo/metadata/integration/MetadataReportService.java
index 3ff7b2d..d0dfa73 100644
---
a/dubbo-metadata-report/dubbo-metadata-report-api/src/main/java/org/apache/dubbo/metadata/integration/MetadataReportService.java
+++
b/dubbo-metadata-report/dubbo-metadata-report-api/src/main/java/org/apache/dubbo/metadata/integration/MetadataReportService.java
@@ -24,8 +24,7 @@ import org.apache.dubbo.common.logger.LoggerFactory;
import org.apache.dubbo.common.utils.StringUtils;
import org.apache.dubbo.metadata.definition.ServiceDefinitionBuilder;
import org.apache.dubbo.metadata.definition.model.FullServiceDefinition;
-import org.apache.dubbo.metadata.identifier.ConsumerMetadataIdentifier;
-import org.apache.dubbo.metadata.identifier.ProviderMetadataIdentifier;
+import org.apache.dubbo.metadata.identifier.MetadataIdentifier;
import org.apache.dubbo.metadata.store.MetadataReport;
import org.apache.dubbo.metadata.store.MetadataReportFactory;
import org.apache.dubbo.rpc.RpcException;
@@ -82,8 +81,9 @@ public class MetadataReportService {
if (StringUtils.isNotEmpty(interfaceName)) {
Class interfaceClass = Class.forName(interfaceName);
FullServiceDefinition fullServiceDefinition =
ServiceDefinitionBuilder.buildFullDefinition(interfaceClass,
providerUrl.getParameters());
- metadataReport.storeProviderMetadata(new
ProviderMetadataIdentifier(providerUrl.getServiceInterface(),
- providerUrl.getParameter(Constants.VERSION_KEY),
providerUrl.getParameter(Constants.GROUP_KEY)), fullServiceDefinition);
+ metadataReport.storeProviderMetadata(new
MetadataIdentifier(providerUrl.getServiceInterface(),
+ providerUrl.getParameter(Constants.VERSION_KEY),
providerUrl.getParameter(Constants.GROUP_KEY),
+
Constants.PROVIDER_SIDE,providerUrl.getParameter(Constants.APPLICATION_KEY)),
fullServiceDefinition);
return;
}
logger.error("publishProvider interfaceName is empty .
providerUrl: " + providerUrl.toFullString());
@@ -95,8 +95,8 @@ public class MetadataReportService {
public void publishConsumer(URL consumerURL) throws RpcException {
consumerURL = consumerURL.removeParameters(Constants.PID_KEY,
Constants.TIMESTAMP_KEY, Constants.BIND_IP_KEY, Constants.BIND_PORT_KEY,
Constants.TIMESTAMP_KEY);
- metadataReport.storeConsumerMetadata(new
ConsumerMetadataIdentifier(consumerURL.getServiceInterface(),
- consumerURL.getParameter(Constants.VERSION_KEY),
consumerURL.getParameter(Constants.GROUP_KEY),
+ metadataReport.storeConsumerMetadata(new
MetadataIdentifier(consumerURL.getServiceInterface(),
+ consumerURL.getParameter(Constants.VERSION_KEY),
consumerURL.getParameter(Constants.GROUP_KEY),Constants.CONSUMER_SIDE,
consumerURL.getParameter(Constants.APPLICATION_KEY)),
consumerURL.getParameters());
}
diff --git
a/dubbo-metadata-report/dubbo-metadata-report-api/src/main/java/org/apache/dubbo/metadata/store/MetadataReport.java
b/dubbo-metadata-report/dubbo-metadata-report-api/src/main/java/org/apache/dubbo/metadata/store/MetadataReport.java
index 4acc862..271b332 100644
---
a/dubbo-metadata-report/dubbo-metadata-report-api/src/main/java/org/apache/dubbo/metadata/store/MetadataReport.java
+++
b/dubbo-metadata-report/dubbo-metadata-report-api/src/main/java/org/apache/dubbo/metadata/store/MetadataReport.java
@@ -18,8 +18,7 @@ package org.apache.dubbo.metadata.store;
import org.apache.dubbo.metadata.definition.model.FullServiceDefinition;
-import org.apache.dubbo.metadata.identifier.ConsumerMetadataIdentifier;
-import org.apache.dubbo.metadata.identifier.ProviderMetadataIdentifier;
+import org.apache.dubbo.metadata.identifier.MetadataIdentifier;
import java.util.Map;
@@ -30,8 +29,8 @@ public interface MetadataReport {
public static final String META_DATA_SOTRE_TAG = ".metaData";
- void storeProviderMetadata(ProviderMetadataIdentifier
providerMetadataIdentifier, FullServiceDefinition serviceDefinition);
+ void storeProviderMetadata(MetadataIdentifier providerMetadataIdentifier,
FullServiceDefinition serviceDefinition);
- void storeConsumerMetadata(ConsumerMetadataIdentifier
consumerMetadataIdentifier, Map<String, String> serviceParameterMap);
+ void storeConsumerMetadata(MetadataIdentifier consumerMetadataIdentifier,
Map<String, String> serviceParameterMap);
}
diff --git
a/dubbo-metadata-report/dubbo-metadata-report-api/src/main/java/org/apache/dubbo/metadata/support/AbstractMetadataReport.java
b/dubbo-metadata-report/dubbo-metadata-report-api/src/main/java/org/apache/dubbo/metadata/support/AbstractMetadataReport.java
index 1c88fbd..c557325 100644
---
a/dubbo-metadata-report/dubbo-metadata-report-api/src/main/java/org/apache/dubbo/metadata/support/AbstractMetadataReport.java
+++
b/dubbo-metadata-report/dubbo-metadata-report-api/src/main/java/org/apache/dubbo/metadata/support/AbstractMetadataReport.java
@@ -24,9 +24,7 @@ import org.apache.dubbo.common.logger.LoggerFactory;
import org.apache.dubbo.common.utils.ConfigUtils;
import org.apache.dubbo.common.utils.NamedThreadFactory;
import org.apache.dubbo.metadata.definition.model.FullServiceDefinition;
-import org.apache.dubbo.metadata.identifier.ConsumerMetadataIdentifier;
import org.apache.dubbo.metadata.identifier.MetadataIdentifier;
-import org.apache.dubbo.metadata.identifier.ProviderMetadataIdentifier;
import org.apache.dubbo.metadata.store.MetadataReport;
import java.io.File;
@@ -64,7 +62,7 @@ public abstract class AbstractMetadataReport implements
MetadataReport {
// Local disk cache, where the special key value.registies records the
list of registry centers, and the others are the list of notified service
providers
final Properties properties = new Properties();
- private final ExecutorService reportCacheExecutor =
Executors.newFixedThreadPool(2, new
NamedThreadFactory("DubboSaveMetadataReport", true));
+ private final ExecutorService reportCacheExecutor =
Executors.newFixedThreadPool(1, new
NamedThreadFactory("DubboSaveMetadataReport", true));
final Map<MetadataIdentifier, Object> allMetadataReports = new
ConcurrentHashMap<MetadataIdentifier, Object>(4);
private final AtomicLong lastCacheChanged = new AtomicLong();
@@ -230,7 +228,7 @@ public abstract class AbstractMetadataReport implements
MetadataReport {
}
}
- public void storeProviderMetadata(ProviderMetadataIdentifier
providerMetadataIdentifier, FullServiceDefinition serviceDefinition) {
+ public void storeProviderMetadata(MetadataIdentifier
providerMetadataIdentifier, FullServiceDefinition serviceDefinition) {
if (syncReport) {
storeProviderMetadataTask(providerMetadataIdentifier,
serviceDefinition);
} else {
@@ -243,7 +241,7 @@ public abstract class AbstractMetadataReport implements
MetadataReport {
}
}
- private void storeProviderMetadataTask(ProviderMetadataIdentifier
providerMetadataIdentifier, FullServiceDefinition serviceDefinition) {
+ private void storeProviderMetadataTask(MetadataIdentifier
providerMetadataIdentifier, FullServiceDefinition serviceDefinition) {
try {
if (logger.isInfoEnabled()) {
logger.info("store provider metadata. Identifier : " +
providerMetadataIdentifier + "; definition: " + serviceDefinition);
@@ -262,7 +260,7 @@ public abstract class AbstractMetadataReport implements
MetadataReport {
}
}
- public void storeConsumerMetadata(ConsumerMetadataIdentifier
consumerMetadataIdentifier, Map<String, String> serviceParameterMap) {
+ public void storeConsumerMetadata(MetadataIdentifier
consumerMetadataIdentifier, Map<String, String> serviceParameterMap) {
if (syncReport) {
storeConsumerMetadataTask(consumerMetadataIdentifier,
serviceParameterMap);
} else {
@@ -275,7 +273,7 @@ public abstract class AbstractMetadataReport implements
MetadataReport {
}
}
- public void storeConsumerMetadataTask(ConsumerMetadataIdentifier
consumerMetadataIdentifier, Map<String, String> serviceParameterMap) {
+ public void storeConsumerMetadataTask(MetadataIdentifier
consumerMetadataIdentifier, Map<String, String> serviceParameterMap) {
try {
if (logger.isInfoEnabled()) {
logger.info("store consumer metadata. Identifier : " +
consumerMetadataIdentifier + "; definition: " + serviceParameterMap);
@@ -316,10 +314,10 @@ public abstract class AbstractMetadataReport implements
MetadataReport {
Iterator<Map.Entry<MetadataIdentifier, Object>> iterable =
metadataMap.entrySet().iterator();
while (iterable.hasNext()) {
Map.Entry<MetadataIdentifier, Object> item = iterable.next();
- if (item.getKey() instanceof ProviderMetadataIdentifier) {
- this.storeProviderMetadata((ProviderMetadataIdentifier)
item.getKey(), (FullServiceDefinition) item.getValue());
- } else if (item.getKey() instanceof ConsumerMetadataIdentifier) {
- this.storeConsumerMetadata((ConsumerMetadataIdentifier)
item.getKey(), (Map) item.getValue());
+ if (Constants.PROVIDER_SIDE.equals(item.getKey().getSide())) {
+ this.storeProviderMetadata(item.getKey(),
(FullServiceDefinition) item.getValue());
+ } else if
(Constants.CONSUMER_SIDE.equals(item.getKey().getSide())) {
+ this.storeConsumerMetadata(item.getKey(), (Map)
item.getValue());
}
}
@@ -401,8 +399,8 @@ public abstract class AbstractMetadataReport implements
MetadataReport {
}
}
- protected abstract void doStoreProviderMetadata(ProviderMetadataIdentifier
providerMetadataIdentifier, String serviceDefinitions);
+ protected abstract void doStoreProviderMetadata(MetadataIdentifier
providerMetadataIdentifier, String serviceDefinitions);
- protected abstract void doStoreConsumerMetadata(ConsumerMetadataIdentifier
consumerMetadataIdentifier, String serviceParameterString);
+ protected abstract void doStoreConsumerMetadata(MetadataIdentifier
consumerMetadataIdentifier, String serviceParameterString);
}
diff --git
a/dubbo-metadata-report/dubbo-metadata-report-api/src/test/java/org/apache/dubbo/metadata/integration/MetadataReportServiceTest.java
b/dubbo-metadata-report/dubbo-metadata-report-api/src/test/java/org/apache/dubbo/metadata/integration/MetadataReportServiceTest.java
index 4059f83..0a06fc1 100644
---
a/dubbo-metadata-report/dubbo-metadata-report-api/src/test/java/org/apache/dubbo/metadata/integration/MetadataReportServiceTest.java
+++
b/dubbo-metadata-report/dubbo-metadata-report-api/src/test/java/org/apache/dubbo/metadata/integration/MetadataReportServiceTest.java
@@ -66,7 +66,7 @@ public class MetadataReportServiceTest {
public void testPublishProviderNoInterfaceName() {
- URL publishUrl = URL.valueOf("dubbo://" +
NetUtils.getLocalAddress().getHostName() +
":4444/org.apache.dubbo.TestService?version=1.0.0&application=vicpubprovder");
+ URL publishUrl = URL.valueOf("dubbo://" +
NetUtils.getLocalAddress().getHostName() +
":4444/org.apache.dubbo.TestService?version=1.0.0&application=vicpubprovder&side=provider");
metadataReportService1.publishProvider(publishUrl);
Assert.assertTrue(metadataReportService1.metadataReport instanceof
JTestMetadataReport4Test);
@@ -79,7 +79,7 @@ public class MetadataReportServiceTest {
@Test
public void testPublishProviderWrongInterface() {
- URL publishUrl = URL.valueOf("dubbo://" +
NetUtils.getLocalAddress().getHostName() +
":4444/org.apache.dubbo.TestService?version=1.0.0&application=vicpu&interface=ccc");
+ URL publishUrl = URL.valueOf("dubbo://" +
NetUtils.getLocalAddress().getHostName() +
":4444/org.apache.dubbo.TestService?version=1.0.0&application=vicpu&interface=ccc&side=provider");
metadataReportService1.publishProvider(publishUrl);
Assert.assertTrue(metadataReportService1.metadataReport instanceof
JTestMetadataReport4Test);
@@ -92,7 +92,7 @@ public class MetadataReportServiceTest {
@Test
public void testPublishProviderContainInterface() throws
InterruptedException {
- URL publishUrl = URL.valueOf("dubbo://" +
NetUtils.getLocalAddress().getHostName() +
":4444/org.apache.dubbo.TestService?version=1.0.3&application=vicpubp&interface=org.apache.dubbo.metadata.integration.InterfaceNameTestService");
+ URL publishUrl = URL.valueOf("dubbo://" +
NetUtils.getLocalAddress().getHostName() +
":4444/org.apache.dubbo.TestService?version=1.0.3&application=vicpubp&interface=org.apache.dubbo.metadata.integration.InterfaceNameTestService&side=provider");
metadataReportService1.publishProvider(publishUrl);
Thread.sleep(300);
diff --git
a/dubbo-metadata-report/dubbo-metadata-report-api/src/test/java/org/apache/dubbo/metadata/store/test/JTestMetadataReport4Test.java
b/dubbo-metadata-report/dubbo-metadata-report-api/src/test/java/org/apache/dubbo/metadata/store/test/JTestMetadataReport4Test.java
index 066faef..294fbbb 100644
---
a/dubbo-metadata-report/dubbo-metadata-report-api/src/test/java/org/apache/dubbo/metadata/store/test/JTestMetadataReport4Test.java
+++
b/dubbo-metadata-report/dubbo-metadata-report-api/src/test/java/org/apache/dubbo/metadata/store/test/JTestMetadataReport4Test.java
@@ -20,9 +20,7 @@ import org.apache.dubbo.common.Constants;
import org.apache.dubbo.common.URL;
import org.apache.dubbo.common.logger.Logger;
import org.apache.dubbo.common.logger.LoggerFactory;
-import org.apache.dubbo.metadata.identifier.ConsumerMetadataIdentifier;
import org.apache.dubbo.metadata.identifier.MetadataIdentifier;
-import org.apache.dubbo.metadata.identifier.ProviderMetadataIdentifier;
import org.apache.dubbo.metadata.support.AbstractMetadataReport;
import org.apache.dubbo.remoting.zookeeper.ZookeeperTransporter;
@@ -51,21 +49,21 @@ public class JTestMetadataReport4Test extends
AbstractMetadataReport {
}
@Override
- protected void doStoreProviderMetadata(ProviderMetadataIdentifier
providerMetadataIdentifier, String serviceDefinitions) {
+ protected void doStoreProviderMetadata(MetadataIdentifier
providerMetadataIdentifier, String serviceDefinitions) {
store.put(providerMetadataIdentifier.getUniqueKey(MetadataIdentifier.KeyTypeEnum.UNIQUE_KEY),
serviceDefinitions);
}
@Override
- protected void doStoreConsumerMetadata(ConsumerMetadataIdentifier
consumerMetadataIdentifier, String serviceParameterString) {
+ protected void doStoreConsumerMetadata(MetadataIdentifier
consumerMetadataIdentifier, String serviceParameterString) {
store.put(consumerMetadataIdentifier.getIdentifierKey(),
serviceParameterString);
}
public static String getProviderKey(URL url) {
- return new
ProviderMetadataIdentifier(url).getUniqueKey(MetadataIdentifier.KeyTypeEnum.UNIQUE_KEY);
+ return new
MetadataIdentifier(url).getUniqueKey(MetadataIdentifier.KeyTypeEnum.UNIQUE_KEY);
}
public static String getConsumerKey(URL url) {
- return new
ConsumerMetadataIdentifier(url).getUniqueKey(MetadataIdentifier.KeyTypeEnum.UNIQUE_KEY);
+ return new
MetadataIdentifier(url).getUniqueKey(MetadataIdentifier.KeyTypeEnum.UNIQUE_KEY);
}
}
diff --git
a/dubbo-metadata-report/dubbo-metadata-report-api/src/test/java/org/apache/dubbo/metadata/support/AbstractMetadataReportFactoryTest.java
b/dubbo-metadata-report/dubbo-metadata-report-api/src/test/java/org/apache/dubbo/metadata/support/AbstractMetadataReportFactoryTest.java
index 3708504..cc69c10 100644
---
a/dubbo-metadata-report/dubbo-metadata-report-api/src/test/java/org/apache/dubbo/metadata/support/AbstractMetadataReportFactoryTest.java
+++
b/dubbo-metadata-report/dubbo-metadata-report-api/src/test/java/org/apache/dubbo/metadata/support/AbstractMetadataReportFactoryTest.java
@@ -19,8 +19,7 @@ package org.apache.dubbo.metadata.support;
import org.apache.dubbo.common.URL;
import org.apache.dubbo.common.utils.NetUtils;
import org.apache.dubbo.metadata.definition.model.FullServiceDefinition;
-import org.apache.dubbo.metadata.identifier.ConsumerMetadataIdentifier;
-import org.apache.dubbo.metadata.identifier.ProviderMetadataIdentifier;
+import org.apache.dubbo.metadata.identifier.MetadataIdentifier;
import org.apache.dubbo.metadata.store.MetadataReport;
import com.alibaba.fastjson.JSON;
@@ -42,12 +41,12 @@ public class AbstractMetadataReportFactoryTest {
return new MetadataReport() {
@Override
- public void storeProviderMetadata(ProviderMetadataIdentifier
providerMetadataIdentifier, FullServiceDefinition serviceDefinition) {
+ public void storeProviderMetadata(MetadataIdentifier
providerMetadataIdentifier, FullServiceDefinition serviceDefinition) {
store.put(providerMetadataIdentifier.getIdentifierKey(),
JSON.toJSONString(serviceDefinition));
}
@Override
- public void storeConsumerMetadata(ConsumerMetadataIdentifier
consumerMetadataIdentifier, Map serviceParameterMap) {
+ public void storeConsumerMetadata(MetadataIdentifier
consumerMetadataIdentifier, Map serviceParameterMap) {
store.put(consumerMetadataIdentifier.getIdentifierKey(),
JSON.toJSONString(serviceParameterMap));
}
diff --git
a/dubbo-metadata-report/dubbo-metadata-report-api/src/test/java/org/apache/dubbo/metadata/support/AbstractMetadataReportTest.java
b/dubbo-metadata-report/dubbo-metadata-report-api/src/test/java/org/apache/dubbo/metadata/support/AbstractMetadataReportTest.java
index 15e4cbf..75b4465 100644
---
a/dubbo-metadata-report/dubbo-metadata-report-api/src/test/java/org/apache/dubbo/metadata/support/AbstractMetadataReportTest.java
+++
b/dubbo-metadata-report/dubbo-metadata-report-api/src/test/java/org/apache/dubbo/metadata/support/AbstractMetadataReportTest.java
@@ -16,13 +16,12 @@
*/
package org.apache.dubbo.metadata.support;
+import org.apache.dubbo.common.Constants;
import org.apache.dubbo.common.URL;
import org.apache.dubbo.common.utils.NetUtils;
import org.apache.dubbo.metadata.definition.ServiceDefinitionBuilder;
import org.apache.dubbo.metadata.definition.model.FullServiceDefinition;
-import org.apache.dubbo.metadata.identifier.ConsumerMetadataIdentifier;
import org.apache.dubbo.metadata.identifier.MetadataIdentifier;
-import org.apache.dubbo.metadata.identifier.ProviderMetadataIdentifier;
import com.google.gson.Gson;
import org.junit.Assert;
@@ -66,7 +65,7 @@ public class AbstractMetadataReportTest {
String version = "1.0.0";
String group = null;
String application = "vic";
- ProviderMetadataIdentifier providerMetadataIdentifier =
storePrivider(abstractMetadataReport, interfaceName, version, group,
application);
+ MetadataIdentifier providerMetadataIdentifier =
storePrivider(abstractMetadataReport, interfaceName, version, group,
application);
Thread.sleep(1000);
Assert.assertNotNull(abstractMetadataReport.store.get(providerMetadataIdentifier.getUniqueKey(MetadataIdentifier.KeyTypeEnum.UNIQUE_KEY)));
}
@@ -78,7 +77,7 @@ public class AbstractMetadataReportTest {
String group = null;
String application = "vic";
abstractMetadataReport.syncReport = true;
- ProviderMetadataIdentifier providerMetadataIdentifier =
storePrivider(abstractMetadataReport, interfaceName, version, group,
application);
+ MetadataIdentifier providerMetadataIdentifier =
storePrivider(abstractMetadataReport, interfaceName, version, group,
application);
Assert.assertNotNull(abstractMetadataReport.store.get(providerMetadataIdentifier.getUniqueKey(MetadataIdentifier.KeyTypeEnum.UNIQUE_KEY)));
}
@@ -94,7 +93,7 @@ public class AbstractMetadataReportTest {
String version = "1.0.0";
String group = null;
String application = "vic";
- ProviderMetadataIdentifier providerMetadataIdentifier =
storePrivider(singleMetadataReport, interfaceName, version, group, application);
+ MetadataIdentifier providerMetadataIdentifier =
storePrivider(singleMetadataReport, interfaceName, version, group, application);
Thread.sleep(2000);
Assert.assertTrue(singleMetadataReport.file.exists());
@@ -152,11 +151,11 @@ public class AbstractMetadataReportTest {
}
- private ProviderMetadataIdentifier storePrivider(AbstractMetadataReport
abstractMetadataReport, String interfaceName, String version, String group,
String application) throws ClassNotFoundException {
+ private MetadataIdentifier storePrivider(AbstractMetadataReport
abstractMetadataReport, String interfaceName, String version, String group,
String application) throws ClassNotFoundException {
URL url = URL.valueOf("xxx://" +
NetUtils.getLocalAddress().getHostName() + ":4444/" + interfaceName +
"?version=" + version + "&application="
+ application + (group == null ? "" : "&group=" + group) +
"&testPKey=8989");
- ProviderMetadataIdentifier providerMetadataIdentifier = new
ProviderMetadataIdentifier(interfaceName, version, group);
+ MetadataIdentifier providerMetadataIdentifier = new
MetadataIdentifier(interfaceName, version, group,
Constants.PROVIDER_SIDE,application);
Class interfaceClass = Class.forName(interfaceName);
FullServiceDefinition fullServiceDefinition =
ServiceDefinitionBuilder.buildFullDefinition(interfaceClass,
url.getParameters());
@@ -165,12 +164,12 @@ public class AbstractMetadataReportTest {
return providerMetadataIdentifier;
}
- private ConsumerMetadataIdentifier storeConsumer(AbstractMetadataReport
abstractMetadataReport, String interfaceName, String version, String group,
String application, Map<String, String> tmp) throws ClassNotFoundException {
+ private MetadataIdentifier storeConsumer(AbstractMetadataReport
abstractMetadataReport, String interfaceName, String version, String group,
String application, Map<String, String> tmp) throws ClassNotFoundException {
URL url = URL.valueOf("xxx://" +
NetUtils.getLocalAddress().getHostName() + ":4444/" + interfaceName +
"?version=" + version + "&application="
+ application + (group == null ? "" : "&group=" + group) +
"&testPKey=9090");
tmp.putAll(url.getParameters());
- ConsumerMetadataIdentifier consumerMetadataIdentifier = new
ConsumerMetadataIdentifier(interfaceName, version, group, application);
+ MetadataIdentifier consumerMetadataIdentifier = new
MetadataIdentifier(interfaceName, version, group, Constants.CONSUMER_SIDE,
application);
abstractMetadataReport.storeConsumerMetadata(consumerMetadataIdentifier, tmp);
@@ -186,12 +185,12 @@ public class AbstractMetadataReportTest {
String version = "1.0.0";
String group = null;
String application = "vic";
- ProviderMetadataIdentifier providerMetadataIdentifier1 =
storePrivider(abstractMetadataReport, interfaceName, version, group,
application);
+ MetadataIdentifier providerMetadataIdentifier1 =
storePrivider(abstractMetadataReport, interfaceName, version, group,
application);
Thread.sleep(1000);
Assert.assertEquals(abstractMetadataReport.allMetadataReports.size(),
1);
Assert.assertTrue(((FullServiceDefinition)
abstractMetadataReport.allMetadataReports.get(providerMetadataIdentifier1)).getParameters().containsKey("testPKey"));
- ProviderMetadataIdentifier providerMetadataIdentifier2 =
storePrivider(abstractMetadataReport, interfaceName, version + "_2", group +
"_2", application);
+ MetadataIdentifier providerMetadataIdentifier2 =
storePrivider(abstractMetadataReport, interfaceName, version + "_2", group +
"_2", application);
Thread.sleep(1000);
Assert.assertEquals(abstractMetadataReport.allMetadataReports.size(),
2);
Assert.assertTrue(((FullServiceDefinition)
abstractMetadataReport.allMetadataReports.get(providerMetadataIdentifier2)).getParameters().containsKey("testPKey"));
@@ -199,7 +198,7 @@ public class AbstractMetadataReportTest {
Map<String, String> tmpMap = new HashMap<>();
tmpMap.put("testKey", "value");
- ConsumerMetadataIdentifier consumerMetadataIdentifier =
storeConsumer(abstractMetadataReport, interfaceName, version + "_3", group +
"_3", application, tmpMap);
+ MetadataIdentifier consumerMetadataIdentifier =
storeConsumer(abstractMetadataReport, interfaceName, version + "_3", group +
"_3", application, tmpMap);
Thread.sleep(1000);
Assert.assertEquals(abstractMetadataReport.allMetadataReports.size(),
3);
@@ -278,12 +277,12 @@ public class AbstractMetadataReportTest {
}
@Override
- protected void doStoreProviderMetadata(ProviderMetadataIdentifier
providerMetadataIdentifier, String serviceDefinitions) {
+ protected void doStoreProviderMetadata(MetadataIdentifier
providerMetadataIdentifier, String serviceDefinitions) {
store.put(providerMetadataIdentifier.getUniqueKey(MetadataIdentifier.KeyTypeEnum.UNIQUE_KEY),
serviceDefinitions);
}
@Override
- protected void doStoreConsumerMetadata(ConsumerMetadataIdentifier
consumerMetadataIdentifier, String serviceParameterString) {
+ protected void doStoreConsumerMetadata(MetadataIdentifier
consumerMetadataIdentifier, String serviceParameterString) {
store.put(consumerMetadataIdentifier.getUniqueKey(MetadataIdentifier.KeyTypeEnum.UNIQUE_KEY),
serviceParameterString);
}
}
@@ -300,7 +299,7 @@ public class AbstractMetadataReportTest {
}
@Override
- protected void doStoreProviderMetadata(ProviderMetadataIdentifier
providerMetadataIdentifier, String serviceDefinitions) {
+ protected void doStoreProviderMetadata(MetadataIdentifier
providerMetadataIdentifier, String serviceDefinitions) {
++executeTimes;
System.out.println("***" + executeTimes + ";" +
System.currentTimeMillis());
if (executeTimes <= needRetryTimes) {
@@ -310,13 +309,14 @@ public class AbstractMetadataReportTest {
}
@Override
- protected void doStoreConsumerMetadata(ConsumerMetadataIdentifier
consumerMetadataIdentifier, String serviceParameterString) {
+ protected void doStoreConsumerMetadata(MetadataIdentifier
consumerMetadataIdentifier, String serviceParameterString) {
++executeTimes;
if (executeTimes <= needRetryTimes) {
throw new RuntimeException("must retry:" + executeTimes);
}
store.put(consumerMetadataIdentifier.getUniqueKey(MetadataIdentifier.KeyTypeEnum.UNIQUE_KEY),
serviceParameterString);
}
+
}
diff --git
a/dubbo-metadata-report/dubbo-metadata-report-redis/src/main/java/org/apache/dubbo/metadata/store/redis/RedisMetadataReport.java
b/dubbo-metadata-report/dubbo-metadata-report-redis/src/main/java/org/apache/dubbo/metadata/store/redis/RedisMetadataReport.java
index ae4e9e9..f86e337 100644
---
a/dubbo-metadata-report/dubbo-metadata-report-redis/src/main/java/org/apache/dubbo/metadata/store/redis/RedisMetadataReport.java
+++
b/dubbo-metadata-report/dubbo-metadata-report-redis/src/main/java/org/apache/dubbo/metadata/store/redis/RedisMetadataReport.java
@@ -19,12 +19,9 @@ package org.apache.dubbo.metadata.store.redis;
import org.apache.dubbo.common.URL;
import org.apache.dubbo.common.logger.Logger;
import org.apache.dubbo.common.logger.LoggerFactory;
-import org.apache.dubbo.metadata.identifier.ConsumerMetadataIdentifier;
import org.apache.dubbo.metadata.identifier.MetadataIdentifier;
-import org.apache.dubbo.metadata.identifier.ProviderMetadataIdentifier;
import org.apache.dubbo.metadata.support.AbstractMetadataReport;
import org.apache.dubbo.rpc.RpcException;
-
import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
import redis.clients.jedis.JedisPoolConfig;
@@ -44,12 +41,12 @@ public class RedisMetadataReport extends
AbstractMetadataReport {
}
@Override
- protected void doStoreProviderMetadata(ProviderMetadataIdentifier
providerMetadataIdentifier, String serviceDefinitions) {
+ protected void doStoreProviderMetadata(MetadataIdentifier
providerMetadataIdentifier, String serviceDefinitions) {
this.storeMetadata(providerMetadataIdentifier, serviceDefinitions);
}
@Override
- protected void doStoreConsumerMetadata(ConsumerMetadataIdentifier
consumerMetadataIdentifier, String value) {
+ protected void doStoreConsumerMetadata(MetadataIdentifier
consumerMetadataIdentifier, String value) {
this.storeMetadata(consumerMetadataIdentifier, value);
}
diff --git
a/dubbo-metadata-report/dubbo-metadata-report-redis/src/test/java/org/apache/dubbo/metadata/store/redis/RedisMetadataReportTest.java
b/dubbo-metadata-report/dubbo-metadata-report-redis/src/test/java/org/apache/dubbo/metadata/store/redis/RedisMetadataReportTest.java
index 2124719..85966b2 100644
---
a/dubbo-metadata-report/dubbo-metadata-report-redis/src/test/java/org/apache/dubbo/metadata/store/redis/RedisMetadataReportTest.java
+++
b/dubbo-metadata-report/dubbo-metadata-report-redis/src/test/java/org/apache/dubbo/metadata/store/redis/RedisMetadataReportTest.java
@@ -1,12 +1,11 @@
package org.apache.dubbo.metadata.store.redis;
+import org.apache.dubbo.common.Constants;
import org.apache.dubbo.common.URL;
import org.apache.dubbo.common.utils.NetUtils;
import org.apache.dubbo.metadata.definition.ServiceDefinitionBuilder;
import org.apache.dubbo.metadata.definition.model.FullServiceDefinition;
-import org.apache.dubbo.metadata.identifier.ConsumerMetadataIdentifier;
import org.apache.dubbo.metadata.identifier.MetadataIdentifier;
-import org.apache.dubbo.metadata.identifier.ProviderMetadataIdentifier;
import org.apache.dubbo.rpc.RpcException;
import com.google.gson.Gson;
@@ -51,7 +50,7 @@ public class RedisMetadataReportTest {
String version = "1.0.0.redis.md";
String group = null;
String application = "vic.redis.md";
- ProviderMetadataIdentifier providerMetadataIdentifier =
storePrivider(redisMetadataReport, interfaceName, version, group, application);
+ MetadataIdentifier providerMetadataIdentifier =
storePrivider(redisMetadataReport, interfaceName, version, group, application);
Jedis jedis = null;
try {
jedis = redisMetadataReport.pool.getResource();
@@ -77,7 +76,7 @@ public class RedisMetadataReportTest {
String version = "1.0.0.redis.md";
String group = null;
String application = "vic.redis.md";
- ConsumerMetadataIdentifier consumerMetadataIdentifier =
storeConsumer(redisMetadataReport, interfaceName, version, group, application);
+ MetadataIdentifier consumerMetadataIdentifier =
storeConsumer(redisMetadataReport, interfaceName, version, group, application);
Jedis jedis = null;
try {
jedis = redisMetadataReport.pool.getResource();
@@ -93,30 +92,38 @@ public class RedisMetadataReportTest {
}
}
- private ProviderMetadataIdentifier storePrivider(RedisMetadataReport
redisMetadataReport, String interfaceName, String version, String group, String
application) throws ClassNotFoundException {
+ private MetadataIdentifier storePrivider(RedisMetadataReport
redisMetadataReport, String interfaceName, String version, String group, String
application) throws ClassNotFoundException {
URL url = URL.valueOf("xxx://" +
NetUtils.getLocalAddress().getHostName() + ":4444/" + interfaceName +
"?paramTest=redisTest&version=" + version + "&application="
+ application + (group == null ? "" : "&group=" + group));
- ProviderMetadataIdentifier providerMetadataIdentifier = new
ProviderMetadataIdentifier(interfaceName, version, group);
+ MetadataIdentifier providerMetadataIdentifier = new
MetadataIdentifier(interfaceName, version, group, Constants.PROVIDER_SIDE,
application);
Class interfaceClass = Class.forName(interfaceName);
FullServiceDefinition fullServiceDefinition =
ServiceDefinitionBuilder.buildFullDefinition(interfaceClass,
url.getParameters());
redisMetadataReport.storeProviderMetadata(providerMetadataIdentifier,
fullServiceDefinition);
-
+ try {
+ Thread.sleep(300);
+ } catch (InterruptedException e) {
+ e.printStackTrace();
+ }
return providerMetadataIdentifier;
}
- private ConsumerMetadataIdentifier storeConsumer(RedisMetadataReport
redisMetadataReport, String interfaceName, String version, String group, String
application) throws ClassNotFoundException {
+ private MetadataIdentifier storeConsumer(RedisMetadataReport
redisMetadataReport, String interfaceName, String version, String group, String
application) throws ClassNotFoundException {
URL url = URL.valueOf("xxx://" +
NetUtils.getLocalAddress().getHostName() + ":4444/" + interfaceName +
"?version=" + version + "&application="
+ application + (group == null ? "" : "&group=" + group));
- ConsumerMetadataIdentifier consumerMetadataIdentifier = new
ConsumerMetadataIdentifier(interfaceName, version, group, application);
+ MetadataIdentifier consumerMetadataIdentifier = new
MetadataIdentifier(interfaceName, version, group, Constants.CONSUMER_SIDE,
application);
Class interfaceClass = Class.forName(interfaceName);
Map<String, String> tmp = new HashMap<>();
tmp.put("paramConsumerTest", "redisCm");
redisMetadataReport.storeConsumerMetadata(consumerMetadataIdentifier,
tmp);
-
+ try {
+ Thread.sleep(300);
+ } catch (InterruptedException e) {
+ e.printStackTrace();
+ }
return consumerMetadataIdentifier;
}
diff --git
a/dubbo-metadata-report/dubbo-metadata-report-zookeeper/src/main/java/org/apache/dubbo/metadata/store/zookeeper/ZookeeperMetadataReport.java
b/dubbo-metadata-report/dubbo-metadata-report-zookeeper/src/main/java/org/apache/dubbo/metadata/store/zookeeper/ZookeeperMetadataReport.java
index 1181299..8194e1a 100644
---
a/dubbo-metadata-report/dubbo-metadata-report-zookeeper/src/main/java/org/apache/dubbo/metadata/store/zookeeper/ZookeeperMetadataReport.java
+++
b/dubbo-metadata-report/dubbo-metadata-report-zookeeper/src/main/java/org/apache/dubbo/metadata/store/zookeeper/ZookeeperMetadataReport.java
@@ -21,9 +21,7 @@ import org.apache.dubbo.common.URL;
import org.apache.dubbo.common.logger.Logger;
import org.apache.dubbo.common.logger.LoggerFactory;
import org.apache.dubbo.common.utils.CollectionUtils;
-import org.apache.dubbo.metadata.identifier.ConsumerMetadataIdentifier;
import org.apache.dubbo.metadata.identifier.MetadataIdentifier;
-import org.apache.dubbo.metadata.identifier.ProviderMetadataIdentifier;
import org.apache.dubbo.metadata.support.AbstractMetadataReport;
import org.apache.dubbo.remoting.zookeeper.ZookeeperClient;
import org.apache.dubbo.remoting.zookeeper.ZookeeperTransporter;
@@ -75,12 +73,12 @@ public class ZookeeperMetadataReport extends
AbstractMetadataReport {
}
@Override
- protected void doStoreProviderMetadata(ProviderMetadataIdentifier
providerMetadataIdentifier, String serviceDefinitions) {
+ protected void doStoreProviderMetadata(MetadataIdentifier
providerMetadataIdentifier, String serviceDefinitions) {
storeMetadata(providerMetadataIdentifier, serviceDefinitions);
}
@Override
- protected void doStoreConsumerMetadata(ConsumerMetadataIdentifier
consumerMetadataIdentifier, String value) {
+ protected void doStoreConsumerMetadata(MetadataIdentifier
consumerMetadataIdentifier, String value) {
storeMetadata(consumerMetadataIdentifier, value);
}
diff --git
a/dubbo-metadata-report/dubbo-metadata-report-zookeeper/src/test/java/org/apache/dubbo/metadata/store/zookeeper/ZookeeperMetadataReportTest.java
b/dubbo-metadata-report/dubbo-metadata-report-zookeeper/src/test/java/org/apache/dubbo/metadata/store/zookeeper/ZookeeperMetadataReportTest.java
index a60fefc..380e107 100644
---
a/dubbo-metadata-report/dubbo-metadata-report-zookeeper/src/test/java/org/apache/dubbo/metadata/store/zookeeper/ZookeeperMetadataReportTest.java
+++
b/dubbo-metadata-report/dubbo-metadata-report-zookeeper/src/test/java/org/apache/dubbo/metadata/store/zookeeper/ZookeeperMetadataReportTest.java
@@ -1,16 +1,14 @@
package org.apache.dubbo.metadata.store.zookeeper;
+import com.google.gson.Gson;
+import org.apache.curator.test.TestingServer;
+import org.apache.dubbo.common.Constants;
import org.apache.dubbo.common.URL;
import org.apache.dubbo.common.utils.NetUtils;
import org.apache.dubbo.metadata.definition.ServiceDefinitionBuilder;
import org.apache.dubbo.metadata.definition.model.FullServiceDefinition;
-import org.apache.dubbo.metadata.identifier.ConsumerMetadataIdentifier;
import org.apache.dubbo.metadata.identifier.MetadataIdentifier;
-import org.apache.dubbo.metadata.identifier.ProviderMetadataIdentifier;
import org.apache.dubbo.remoting.zookeeper.curator.CuratorZookeeperTransporter;
-
-import com.google.gson.Gson;
-import org.apache.curator.test.TestingServer;
import org.junit.After;
import org.junit.Assert;
import org.junit.Before;
@@ -50,12 +48,12 @@ public class ZookeeperMetadataReportTest {
}
@Test
- public void testStoreProvider() throws ClassNotFoundException {
+ public void testStoreProvider() throws ClassNotFoundException,
InterruptedException {
String interfaceName =
"org.apache.dubbo.metadata.store.zookeeper.ZookeeperMetadataReport4TstService";
String version = "1.0.0.zk.md";
String group = null;
String application = "vic.zk.md";
- ProviderMetadataIdentifier providerMetadataIdentifier =
storePrivider(zookeeperMetadataReport, interfaceName, version, group,
application);
+ MetadataIdentifier providerMetadataIdentifier =
storePrivider(zookeeperMetadataReport, interfaceName, version, group,
application);
String fileContent =
zookeeperMetadataReport.zkClient.getContent(zookeeperMetadataReport.getNodePath(providerMetadataIdentifier));
Assert.assertNotNull(fileContent);
@@ -76,12 +74,12 @@ public class ZookeeperMetadataReportTest {
@Test
- public void testConsumer() throws ClassNotFoundException {
+ public void testConsumer() throws ClassNotFoundException,
InterruptedException {
String interfaceName =
"org.apache.dubbo.metadata.store.zookeeper.ZookeeperMetadataReport4TstService";
String version = "1.0.0.zk.md";
String group = null;
String application = "vic.zk.md";
- ConsumerMetadataIdentifier consumerMetadataIdentifier =
storeConsumer(zookeeperMetadataReport, interfaceName, version, group,
application);
+ MetadataIdentifier consumerMetadataIdentifier =
storeConsumer(zookeeperMetadataReport, interfaceName, version, group,
application);
String fileContent =
zookeeperMetadataReport.zkClient.getContent(zookeeperMetadataReport.getNodePath(consumerMetadataIdentifier));
Assert.assertNotNull(fileContent);
@@ -97,29 +95,30 @@ public class ZookeeperMetadataReportTest {
}
- private ProviderMetadataIdentifier storePrivider(ZookeeperMetadataReport
zookeeperMetadataReport, String interfaceName, String version, String group,
String application) throws ClassNotFoundException {
+ private MetadataIdentifier storePrivider(ZookeeperMetadataReport
zookeeperMetadataReport, String interfaceName, String version, String group,
String application) throws ClassNotFoundException, InterruptedException {
URL url = URL.valueOf("xxx://" +
NetUtils.getLocalAddress().getHostName() + ":4444/" + interfaceName +
"?paramTest=zkTest&version=" + version + "&application="
+ application + (group == null ? "" : "&group=" + group));
- ProviderMetadataIdentifier providerMetadataIdentifier = new
ProviderMetadataIdentifier(interfaceName, version, group);
+ MetadataIdentifier providerMetadataIdentifier = new
MetadataIdentifier(interfaceName, version, group, Constants.PROVIDER_SIDE,
application);
Class interfaceClass = Class.forName(interfaceName);
FullServiceDefinition fullServiceDefinition =
ServiceDefinitionBuilder.buildFullDefinition(interfaceClass,
url.getParameters());
zookeeperMetadataReport.storeProviderMetadata(providerMetadataIdentifier,
fullServiceDefinition);
-
+ Thread.sleep(300);
return providerMetadataIdentifier;
}
- private ConsumerMetadataIdentifier storeConsumer(ZookeeperMetadataReport
zookeeperMetadataReport, String interfaceName, String version, String group,
String application) throws ClassNotFoundException {
+ private MetadataIdentifier storeConsumer(ZookeeperMetadataReport
zookeeperMetadataReport, String interfaceName, String version, String group,
String application) throws ClassNotFoundException, InterruptedException {
URL url = URL.valueOf("xxx://" +
NetUtils.getLocalAddress().getHostName() + ":4444/" + interfaceName +
"?version=" + version + "&application="
+ application + (group == null ? "" : "&group=" + group));
- ConsumerMetadataIdentifier consumerMetadataIdentifier = new
ConsumerMetadataIdentifier(interfaceName, version, group, application);
+ MetadataIdentifier consumerMetadataIdentifier = new
MetadataIdentifier(interfaceName, version, group, Constants.CONSUMER_SIDE,
application);
Class interfaceClass = Class.forName(interfaceName);
Map<String, String> tmp = new HashMap<>();
tmp.put("paramConsumerTest", "zkCm");
zookeeperMetadataReport.storeConsumerMetadata(consumerMetadataIdentifier, tmp);
+ Thread.sleep(300);
return consumerMetadataIdentifier;
}