psmith      2003/06/26 20:25:24

  Modified:    src/java/org/apache/log4j/chainsaw ReceiversTreeModel.java
  Log:
  Changes to allow the Root Receiver node to detect when the 
  logger repository threshold had changed.
  
  Revision  Changes    Path
  1.2       +24 -7     
jakarta-log4j/src/java/org/apache/log4j/chainsaw/ReceiversTreeModel.java
  
  Index: ReceiversTreeModel.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-log4j/src/java/org/apache/log4j/chainsaw/ReceiversTreeModel.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- ReceiversTreeModel.java   25 Jun 2003 04:05:21 -0000      1.1
  +++ ReceiversTreeModel.java   27 Jun 2003 03:25:23 -0000      1.2
  @@ -68,14 +68,17 @@
    * @author Paul Smith <[EMAIL PROTECTED]>
    */
   public class ReceiversTreeModel extends DefaultTreeModel {
  -  final DefaultMutableTreeNode NoReceiversNode = new DefaultMutableTreeNode("You 
have no Receivers defined");
  +  private static final String ROOTNODE_LABEL = "Receivers";
  +  final DefaultMutableTreeNode NoReceiversNode =
  +    new DefaultMutableTreeNode("You have no Receivers defined");
     final DefaultMutableTreeNode RootNode;
   
     ReceiversTreeModel() {
  -    super(new DefaultMutableTreeNode("Receivers"));
  +    super(new DefaultMutableTreeNode(ROOTNODE_LABEL));
       RootNode = (DefaultMutableTreeNode) getRoot();
       refresh();
     }
  +
     /**
      * Creates a new ReceiversTreeModel by querying the Log4j Plugin Repository
      * and building up the required information.
  @@ -84,15 +87,16 @@
      */
     public final synchronized ReceiversTreeModel refresh() {
       RootNode.removeAllChildren();
  -    
  +
       Collection receivers =
         PluginRegistry.getPlugins(
           LogManager.getLoggerRepository(), Receiver.class);
   
  -    if( receivers.size() == 0){
  -      
  -      getRootNode().add(NoReceiversNode);     
  -    }else {
  +    updateRootDisplay();
  +
  +    if (receivers.size() == 0) {
  +      getRootNode().add(NoReceiversNode);
  +    } else {
         for (Iterator iter = receivers.iterator(); iter.hasNext();) {
           Receiver item = (Receiver) iter.next();
           DefaultMutableTreeNode receiverNode = new DefaultMutableTreeNode(item);
  @@ -110,8 +114,21 @@
           getRootNode().add(receiverNode);
         }
       }
  +
       reload();
  +
       return this;
  +  }
  +
  +  /**
  +   * Ensure the Root node of this tree is updated with the latest information
  +   * and that listeners are notified.
  +   */
  +  void updateRootDisplay() {
  +    getRootNode().setUserObject(
  +      ROOTNODE_LABEL + " (" + LogManager.getLoggerRepository().getThreshold()
  +      + ")");
  +    nodeChanged(getRootNode());
     }
   
     DefaultMutableTreeNode getRootNode() {
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to