psmith 2003/06/22 20:49:49
Modified: src/java/org/apache/log4j/chainsaw ReceiversTreeModel.java
Log:
Moved from static create factory method to a 'refresh' method
so that a new model is not required on each change.
This is mostly to stop the currently selected node from being lost on
model change.
Revision Changes Path
1.5 +12 -11
jakarta-log4j-sandbox/src/java/org/apache/log4j/chainsaw/ReceiversTreeModel.java
Index: ReceiversTreeModel.java
===================================================================
RCS file:
/home/cvs/jakarta-log4j-sandbox/src/java/org/apache/log4j/chainsaw/ReceiversTreeModel.java,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- ReceiversTreeModel.java 19 Jun 2003 22:57:06 -0000 1.4
+++ ReceiversTreeModel.java 23 Jun 2003 03:49:49 -0000 1.5
@@ -68,29 +68,30 @@
* @author Paul Smith <[EMAIL PROTECTED]>
*/
public class ReceiversTreeModel extends DefaultTreeModel {
- private ReceiversTreeModel() {
- super(RootNode);
+ final DefaultMutableTreeNode NoReceiversNode = new DefaultMutableTreeNode("You
have no Receivers defined");
+ final DefaultMutableTreeNode RootNode;
+
+ ReceiversTreeModel() {
+ super(new DefaultMutableTreeNode("Receivers"));
+ RootNode = (DefaultMutableTreeNode) getRoot();
+ refresh();
}
- static final DefaultMutableTreeNode NoReceiversNode = new
DefaultMutableTreeNode("You have no Receivers defined");
- static final DefaultMutableTreeNode RootNode = new
DefaultMutableTreeNode("Receivers");
/**
* Creates a new ReceiversTreeModel by querying the Log4j Plugin Repository
* and building up the required information.
*
* @return ReceiversTreeModel
*/
- public static final synchronized ReceiversTreeModel create() {
+ public final synchronized ReceiversTreeModel refresh() {
RootNode.removeAllChildren();
- ReceiversTreeModel model = new ReceiversTreeModel();
-
Collection receivers =
PluginRegistry.getPlugins(
LogManager.getLoggerRepository(), Receiver.class);
if( receivers.size() == 0){
- model.getRootNode().add(NoReceiversNode);
+ getRootNode().add(NoReceiversNode);
}else {
for (Iterator iter = receivers.iterator(); iter.hasNext();) {
Receiver item = (Receiver) iter.next();
@@ -106,11 +107,11 @@
}
}
- model.getRootNode().add(receiverNode);
+ getRootNode().add(receiverNode);
}
}
-
- return model;
+ reload();
+ return this;
}
DefaultMutableTreeNode getRootNode() {
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]