use of com.alibaba.csp.sentinel.dashboard.domain.cluster.state.ClusterClientStateVO in project pig by pig-mesh.
the class ClusterEntityUtils method wrapToAppClusterServerState.
public static List<AppClusterServerStateWrapVO> wrapToAppClusterServerState(List<ClusterUniversalStatePairVO> list) {
if (list == null || list.isEmpty()) {
return new ArrayList<>();
}
Map<String, AppClusterServerStateWrapVO> map = new HashMap<>();
Set<String> tokenServerSet = new HashSet<>();
// Handle token servers that belong to current app.
for (ClusterUniversalStatePairVO stateVO : list) {
int mode = stateVO.getState().getStateInfo().getMode();
if (mode == ClusterStateManager.CLUSTER_SERVER) {
String ip = stateVO.getIp();
String serverId = ip + '@' + stateVO.getCommandPort();
ClusterServerStateVO serverStateVO = stateVO.getState().getServer();
map.computeIfAbsent(serverId, v -> new AppClusterServerStateWrapVO().setId(serverId).setIp(ip).setPort(serverStateVO.getPort()).setState(serverStateVO).setBelongToApp(true).setConnectedCount(serverStateVO.getConnection().stream().mapToInt(ConnectionGroupVO::getConnectedCount).sum()));
tokenServerSet.add(ip + ":" + serverStateVO.getPort());
}
}
// Handle token servers from other app.
for (ClusterUniversalStatePairVO stateVO : list) {
int mode = stateVO.getState().getStateInfo().getMode();
if (mode == ClusterStateManager.CLUSTER_CLIENT) {
ClusterClientStateVO clientState = stateVO.getState().getClient();
if (clientState == null) {
continue;
}
String serverIp = clientState.getClientConfig().getServerHost();
int serverPort = clientState.getClientConfig().getServerPort();
if (tokenServerSet.contains(serverIp + ":" + serverPort)) {
continue;
}
// We are not able to get the commandPort of foreign token server
// directly.
String serverId = String.format("%s:%d", serverIp, serverPort);
map.computeIfAbsent(serverId, v -> new AppClusterServerStateWrapVO().setId(serverId).setIp(serverIp).setPort(serverPort).setBelongToApp(false));
}
}
return new ArrayList<>(map.values());
}
use of com.alibaba.csp.sentinel.dashboard.domain.cluster.state.ClusterClientStateVO in project spring-boot-student by wyh-spring-ecosystem-student.
the class ClusterEntityUtils method wrapToAppClusterClientState.
public static List<AppClusterClientStateWrapVO> wrapToAppClusterClientState(List<ClusterUniversalStatePairVO> list) {
if (list == null || list.isEmpty()) {
return new ArrayList<>();
}
Map<String, AppClusterClientStateWrapVO> map = new HashMap<>();
for (ClusterUniversalStatePairVO stateVO : list) {
int mode = stateVO.getState().getStateInfo().getMode();
if (mode == ClusterStateManager.CLUSTER_CLIENT) {
String ip = stateVO.getIp();
String clientId = ip + '@' + stateVO.getCommandPort();
ClusterClientStateVO clientStateVO = stateVO.getState().getClient();
map.computeIfAbsent(clientId, v -> new AppClusterClientStateWrapVO().setId(clientId).setIp(ip).setState(clientStateVO).setCommandPort(stateVO.getCommandPort()));
}
}
return new ArrayList<>(map.values());
}
use of com.alibaba.csp.sentinel.dashboard.domain.cluster.state.ClusterClientStateVO in project XHuiCloud by sindaZeng.
the class ClusterEntityUtils method wrapToAppClusterClientState.
public static List<AppClusterClientStateWrapVO> wrapToAppClusterClientState(List<ClusterUniversalStatePairVO> list) {
if (list == null || list.isEmpty()) {
return new ArrayList<>();
}
Map<String, AppClusterClientStateWrapVO> map = new HashMap<>();
for (ClusterUniversalStatePairVO stateVO : list) {
int mode = stateVO.getState().getStateInfo().getMode();
if (mode == ClusterStateManager.CLUSTER_CLIENT) {
String ip = stateVO.getIp();
String clientId = ip + '@' + stateVO.getCommandPort();
ClusterClientStateVO clientStateVO = stateVO.getState().getClient();
map.computeIfAbsent(clientId, v -> new AppClusterClientStateWrapVO().setId(clientId).setIp(ip).setState(clientStateVO).setCommandPort(stateVO.getCommandPort()));
}
}
return new ArrayList<>(map.values());
}
Aggregations