in dubbo-admin-server/src/main/java/org/apache/dubbo/admin/common/util/SyncUtils.java [85:113]
public static Consumer url2Consumer(Pair<String, URL> pair) {
if (pair == null) {
return null;
}
String id = pair.getKey();
URL url = pair.getValue();
if (null == url)
return null;
Consumer c = new Consumer();
c.setHash(id);
String group = url.getUrlParam().getParameter(Constants.GROUP_KEY);
String version = url.getUrlParam().getParameter(Constants.VERSION_KEY);
String service = BaseServiceMetadata.buildServiceKey(getServiceInterface(url), group, version);
c.setService(service);
if (url.getHost() == null) {
if (url instanceof DubboServiceAddressURL) {
c.setAddress(((DubboServiceAddressURL) url).getConsumerURL().getRawParameter("host"));
}
} else {
c.setAddress(url.getHost());
}
c.setApplication(url.getParameter(Constants.APPLICATION_KEY));
c.setParameters(url.toParameterString());
return c;
}