We can easily find out how many URLs there will be when we start parsing, since they're all in memory.
Single threaded by nature; no benefit to multiple threads since no data will be available until the entire document has been read and parsed.
The character data of each url 
element needs to be read.
Everything else can be ignored.
The  getElementsByTagName() method in 
Document gives us a quick list of all the 
 url 
elements.
The XML parsing is so straight-forward it can be done inside one method. No extra class is required.