Ignore:
Timestamp:
2009-12-19T10:47:49+01:00 (14 years ago)
Author:
jttt
Message:

Fixed #4161 Major slowdown in recent versions, used correct pattern for listeners realized using CopyOnWriteArrayList

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/org/openstreetmap/josm/gui/dialogs/relation/RelationTreeModel.java

    r2578 r2655  
    44import java.util.List;
    55import java.util.concurrent.CopyOnWriteArrayList;
    6 import java.util.logging.Logger;
    76
    87import javax.swing.event.TreeModelEvent;
     
    2423 */
    2524public class RelationTreeModel implements TreeModel {
    26     private static final Logger logger = Logger.getLogger(RelationTreeModel.class.getName());
     25    //private static final Logger logger = Logger.getLogger(RelationTreeModel.class.getName());
    2726
    2827    /** the root relation */
     
    215214
    216215    public void addTreeModelListener(TreeModelListener l) {
    217         synchronized (listeners) {
    218             if (l != null && !listeners.contains(l)) {
    219                 listeners.add(l);
    220             }
     216        if (l != null) {
     217            listeners.addIfAbsent(l);
    221218        }
    222219    }
    223220
    224221    public void removeTreeModelListener(TreeModelListener l) {
    225         synchronized (listeners) {
    226             if (l != null && listeners.contains(l)) {
    227                 listeners.remove(l);
    228             }
    229         }
     222        listeners.remove(l);
    230223    }
    231224
Note: See TracChangeset for help on using the changeset viewer.