in src/main/java/org/apache/sling/discovery/oak/TopologyWebConsolePlugin.java [539:581]
private void listIncomingTopologyConnectors(final PrintWriter pw) {
boolean odd = false;
pw.println("<div class=\"ui-widget-header ui-corner-top buttonGroup\" style=\"height: 15px;\">");
pw.println("<span style=\"float: left; margin-left: 1em;\">Incoming topology connectors</span>");
pw.println("</div>");
pw.println("<table class=\"adapters nicetable ui-widget tablesorter\">");
pw.println("<thead>");
pw.println("<tr>");
pw.println("<th class=\"header ui-widget-header\">Owner slingId</th>");
pw.println("<th class=\"header ui-widget-header\">Server info</th>");
pw.println("<th class=\"header ui-widget-header\">Last heartbeat</th>");
pw.println("<th class=\"header ui-widget-header\">Timeout</th>");
pw.println("</tr>");
pw.println("</thead>");
pw.println("<tbody>");
Collection<CachedAnnouncement> incomingConnections = announcementRegistry.listLocalIncomingAnnouncements();
for (Iterator<CachedAnnouncement> it = incomingConnections.iterator(); it
.hasNext();) {
CachedAnnouncement incomingCachedAnnouncement = it.next();
Announcement incomingAnnouncement = incomingCachedAnnouncement.getAnnouncement();
String oddEven = odd ? "odd" : "even";
odd = !odd;
pw.println("<tr class=\"" + oddEven + " ui-state-default\">");
pw.println("<td>" + incomingAnnouncement.getOwnerId() + "</td>");
if (incomingAnnouncement.getServerInfo() != null) {
pw.println("<td>" + incomingAnnouncement.getServerInfo()
+ "</td>");
} else {
pw.println("<td><i>n/a</i></td>");
}
pw.println("<td>"+beautifiedTimeDiff(incomingCachedAnnouncement.getLastPing())+"</td>");
pw.println("<td>"+beautifiedDueTime(incomingCachedAnnouncement.getSecondsUntilTimeout())+"</td>");
pw.println("</tr>");
}
pw.println("</tbody>");
pw.println("</table>");
pw.println("<br/>");
pw.println("<br/>");
}