use of io.datarouter.aws.memcached.client.MemcachedClientMode in project datarouter by hotpads.
the class AwsMemcachedWebInspector method getDetails.
@Override
protected Pair<Integer, DivTag> getDetails(ClientId clientId) {
MemcachedClientMode mode = options.getClientMode(clientId.getName());
Pair<Integer, DivTag> nodeCountByNodeTag = new Pair<>();
if (mode == MemcachedClientMode.DYNAMIC) {
List<AwsMemcachedNodeEndpointDto> nodeEndpointDtos = Scanner.of(getSpyClient(clientId).getAllNodeEndPoints()).map(nodeEndPoint -> new AwsMemcachedNodeEndpointDto(nodeEndPoint.getHostName(), nodeEndPoint.getIpAddress(), nodeEndPoint.getPort())).list();
var table = new J2HtmlTable<AwsMemcachedNodeEndpointDto>().withClasses("sortable table table-sm table-striped my-4 border").withColumn("HostName", dto -> dto.hostName).withColumn("IpAddress", dto -> dto.ipAddress).withColumn("Port", dto -> dto.port).build(nodeEndpointDtos);
DivTag divTable = div(table).withClass("container-fluid my-4").withStyle("padding-left: 0px");
nodeCountByNodeTag.setLeft(nodeEndpointDtos.size());
nodeCountByNodeTag.setRight(divTable);
} else {
List<LiTag> socketAddresses = Scanner.of(getSpyClient(clientId).getAvailableServers()).map(Object::toString).map(TagCreator::li).list();
DivTag div = div(ul(socketAddresses.toArray(new ContainerTag[0])));
nodeCountByNodeTag.setLeft(socketAddresses.size());
nodeCountByNodeTag.setRight(div);
}
return nodeCountByNodeTag;
}
Aggregations