FileDocCategorySizeDatePackage
ThreadGroupRenderer.javaAPI DocApache log4j 1.2.152401Sat Aug 25 00:09:38 BST 2007org.apache.log4j.or

ThreadGroupRenderer

public class ThreadGroupRenderer extends Object implements ObjectRenderer
Render {@link ThreadGroup} objects in a format similar to the information output by the {@link ThreadGroup#list} method.
author
Ceki Gülcü
since
1.0

Fields Summary
Constructors Summary
public ThreadGroupRenderer()

  
Methods Summary
public java.lang.StringdoRender(java.lang.Object o)
Render a {@link ThreadGroup} object similar to the way that the {@link ThreadGroup#list} method output information.

The output of a simple program consisting of one main thread is:

java.lang.ThreadGroup[name=main, maxpri=10]
Thread=[main,5,false]

The boolean value in thread information is the value returned by {@link Thread#isDaemon}.

    if(o instanceof ThreadGroup) {
      StringBuffer sbuf = new StringBuffer();
      ThreadGroup tg = (ThreadGroup) o;
      sbuf.append("java.lang.ThreadGroup[name=");
      sbuf.append(tg.getName());
      sbuf.append(", maxpri=");
      sbuf.append(tg.getMaxPriority());
      sbuf.append("]");
      Thread[] t = new Thread[tg.activeCount()];
      tg.enumerate(t);
      for(int i = 0; i < t.length; i++) {
	sbuf.append(Layout.LINE_SEP);	
	sbuf.append("   Thread=[");
	sbuf.append(t[i].getName());
	sbuf.append(",");
	sbuf.append(t[i].getPriority());
	sbuf.append(",");
	sbuf.append(t[i].isDaemon());
	sbuf.append("]");
      }
      return sbuf.toString();
    } else {
      // this is the best we can do
      return o.toString();
    }