[jdom-interest] Presences of Namespace dramatically slows SAXBuilder
Tim Peierls
TPeierls at descartes.com
Thu Apr 12 11:13:57 PDT 2001
This is in reply to Jason Hunter's message of Tue, 03 Apr 2001 12:52:08
-0700. (I just subscribed to jdom-interest, so I don't have an actual
message to reply to.)
> [Jason Hunter wrote:] ... I did a little OptimizeIt testing and found
> that one line was taking the vast bulk of time:
>
> availableNamespaces.remove(element.getAdditionalNamespaces());
>
> I changed it to:
>
> List addl = element.getAdditionalNamespaces();
> if (addl.size() > 0) {
> availableNamespaces.remove(addl);
> }
Both of these look wrong to me. Shouldn't it simply be
availableNamespaces.removeAll(element.getAdditionalNamespaces());
?
The remove() method removes a single element from a Collection. removeAll()
removes all the elements of the argument collection from the target
collection. The current code would never remove _any_ namespaces from
availableNamespaces, which can't be right.
On a related note, shouldn't availableNamespaces be declared as a List
rather than a LinkedList? It doesn't make use of any special linked list
capabilities, does it?
--tim
More information about the jdom-interest
mailing list