This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.
|Summary:||getSelectedObjects returns modifiable set|
|Product:||platform||Reporter:||Joelle Lam <joellelam>|
|Issue Type:||DEFECT||Exception Reporter:|
|Attachments:||image of drop down behind new watch dialog|
Description Joelle Lam 2007-04-05 16:21:57 UTC
ObjectScene.getSelectedObjects should return UnModifiableSet. While doing a for each through the selected objects, it seems that the selected objects where modified (since I deleting the selected objects one by one). Exception thrown was this. Any list like this should be a copy of the actual list. java.util.ConcurrentModificationException at java.util.HashMap$HashIterator.nextEntry(HashMap.java:793) at java.util.HashMap$KeyIterator.next(HashMap.java:827) at java.util.Collections$UnmodifiableCollection$1.next(Collections.java:1010) at org.netbeans.modules.web.jsf.navigation.graph.actions.MapActionUtility$1.actionPerformed(MapActionUtility.java:155) The workaround would be to make my own copy. David, do you think this is an issue?
Comment 1 David Kaspar 2007-04-05 19:59:32 UTC
I think the implementation is ok because performance reason. During "setSelectedObjects" method call you would have to create a copy of the set - current algorithm creates a copy of the set only for purpose of firing SELECTION_CHANGED events to ObjectSceneListener. The best would be to use CopyOnWriteHashSet (but it does not exist). I would rather recomend you to create a copy of the set while you modifying the ObjectScene structures. I am closing the issue as WONTFIX. Feel free to reopen it if you disagree.
Comment 2 David Kaspar 2007-04-05 20:21:27 UTC
Reopening the issue. This behaviour has to be documented in documentation.html and javadoc for all getter methods.
Comment 3 Joelle Lam 2007-10-26 16:35:03 UTC
Created attachment 51797 [details] image of drop down behind new watch dialog
Comment 4 Joelle Lam 2007-10-26 16:38:45 UTC
oops added to wrong bug. ignore that last attachment