package org.kisst.gft.admin.status; import java.io.PrintWriter; import java.util.HashMap; import org.kisst.gft.GftContainer; import org.kisst.gft.GftWrapper; import org.kisst.jms.JmsListener; import org.kisst.jms.MultiListener; public class NotListeningListenerThreads extends StatusItem { private final HashMap<String, MultiListener> listeners; private String message; public NotListeningListenerThreads(GftWrapper wrapper, HashMap<String, MultiListener> listeners) { super(wrapper, NotListeningListenerThreads.class.getSimpleName()); this.listeners=listeners; } @Override public void refresh() { int count=0; String message=""; for (MultiListener ml : listeners.values()) { int i=0; for (JmsListener l : ml.listeners) { i++; if (! "LISTENING".equals(l.getStatus())) { count++; message += ml.getName()+"/"+i+"\t"+l.getStatus()+"\n"; } } } this.problemCount=count; this.message=message; } @Override public String getMessage() { return message;} @Override public void writeDetails(PrintWriter out) { super.writeDetails(out); out.write("<table><tr><td><b>Listener</b></td><td><b>Status</b></td></tr></h3>\n"); for (MultiListener ml : listeners.values()) { int i=0; for (JmsListener l : ml.listeners) { i++; out.write("<tr><td>"+ml.getName()+"/"+i+"</td><td>"+l.getStatus()+"</td></tr>\n"); } } out.write("</table>\n"); } }