in appactive-java-client/client-bridge/client-bridge-rpc-springcloud/client-bridge-rpc-springcloud-common/src/main/java/io/appactive/rpc/springcloud/common/consumer/ConsumerRouter.java [90:114]
public static synchronized Integer refresh(List<Server> servers){
Integer changed = 0;
if (CollectionUtils.isEmpty(servers)){
return changed;
}
Server oneServer = servers.get(0);
String appName = oneServer.getMetaInfo().getAppName();
String version = serverMeta.getMetaMap(oneServer).get(RPCConstant.SPRING_CLOUD_SERVICE_META_VERSION);
String metaMapValue = addressFilterByUnitService.getMetaMapFromServer(oneServer, RPCConstant.SPRING_CLOUD_SERVICE_META);
if (StringUtils.isBlank(metaMapValue)){
return changed;
}
List<ServiceMeta> serviceMetaList = JSON.parseArray(metaMapValue,ServiceMeta.class);
if (CollectionUtils.isEmpty(serviceMetaList)){
return changed;
}
for (ServiceMeta serviceMeta : serviceMetaList) {
String servicePrimaryKey = buildServicePrimaryName(appName, serviceMeta.getUriPrefix());
if(addressFilterByUnitService.refreshAddressList(null, servicePrimaryKey, servers, version, serviceMeta.getRa())){
changed++;
}
}
return changed;
}