Commit cccb90df by Nepxion

增加获取组的接口

parent 4264fe8e
...@@ -318,8 +318,8 @@ public class ServiceTopology extends AbstractTopology { ...@@ -318,8 +318,8 @@ public class ServiceTopology extends AbstractTopology {
for (Map.Entry<String, List<Instance>> entry : instanceMap.entrySet()) { for (Map.Entry<String, List<Instance>> entry : instanceMap.entrySet()) {
List<Instance> instances = entry.getValue(); List<Instance> instances = entry.getValue();
for (Instance instance : instances) { for (Instance instance : instances) {
String filter = InstanceEntityWrapper.getGroup(instance);
String plugin = InstanceEntityWrapper.getPlugin(instance); String plugin = InstanceEntityWrapper.getPlugin(instance);
String filter = InstanceEntityWrapper.getGroup(instance);
if (StringUtils.isNotEmpty(plugin) && !filters.contains(filter)) { if (StringUtils.isNotEmpty(plugin) && !filters.contains(filter)) {
filters.add(filter); filters.add(filter);
} }
......
...@@ -18,6 +18,7 @@ import java.util.LinkedHashMap; ...@@ -18,6 +18,7 @@ import java.util.LinkedHashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
...@@ -38,6 +39,7 @@ import org.springframework.web.client.RestTemplate; ...@@ -38,6 +39,7 @@ import org.springframework.web.client.RestTemplate;
import com.nepxion.discovery.common.constant.DiscoveryConstant; import com.nepxion.discovery.common.constant.DiscoveryConstant;
import com.nepxion.discovery.common.entity.InstanceEntity; import com.nepxion.discovery.common.entity.InstanceEntity;
import com.nepxion.discovery.common.entity.InstanceEntityWrapper;
import com.nepxion.discovery.console.adapter.ConfigAdapter; import com.nepxion.discovery.console.adapter.ConfigAdapter;
import com.nepxion.discovery.console.rest.ConfigClearRestInvoker; import com.nepxion.discovery.console.rest.ConfigClearRestInvoker;
import com.nepxion.discovery.console.rest.ConfigUpdateRestInvoker; import com.nepxion.discovery.console.rest.ConfigUpdateRestInvoker;
...@@ -69,6 +71,14 @@ public class ConsoleEndpoint { ...@@ -69,6 +71,14 @@ public class ConsoleEndpoint {
return getConfigType(); return getConfigType();
} }
@RequestMapping(path = "/groups", method = RequestMethod.GET)
@ApiOperation(value = "获取服务注册中心的服务所在的组列表", notes = "", response = List.class, httpMethod = "GET")
@ResponseBody
@ManagedOperation
public List<String> groups() {
return getGroups();
}
@RequestMapping(path = "/services", method = RequestMethod.GET) @RequestMapping(path = "/services", method = RequestMethod.GET)
@ApiOperation(value = "获取服务注册中心的服务列表", notes = "", response = List.class, httpMethod = "GET") @ApiOperation(value = "获取服务注册中心的服务列表", notes = "", response = List.class, httpMethod = "GET")
@ResponseBody @ResponseBody
...@@ -201,6 +211,24 @@ public class ConsoleEndpoint { ...@@ -201,6 +211,24 @@ public class ConsoleEndpoint {
return ResponseEntity.ok().body(configType); return ResponseEntity.ok().body(configType);
} }
public List<String> getGroups() {
List<String> groups = new ArrayList<String>();
List<String> services = getServices();
for (String service : services) {
List<InstanceEntity> instanceEntityList = getInstanceList(service);
for (InstanceEntity instance : instanceEntityList) {
String plugin = InstanceEntityWrapper.getPlugin(instance);
String group = InstanceEntityWrapper.getGroup(instance);
if (StringUtils.isNotEmpty(plugin) && !groups.contains(group)) {
groups.add(group);
}
}
}
return groups;
}
public List<String> getServices() { public List<String> getServices() {
return discoveryClient.getServices(); return discoveryClient.getServices();
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment