exhaust-us is an automated mp3 downloading program. It takes a list of mp3s from a text file, parses them, and searches for more artists from the list. When the results are returned, they're compared against the list of existing songs for the current artist. If the song isn't found, it's downloaded. If the download is too slow to start, or drops below a certain speed, it's cancelled. It continues this indefinitely. At the beginning of the program startup it checks a 'wishlist' of keywords that the user has selected to search for. This is typically songs that are hard to find. This feature allows periodic checking of the napster database for certain songs. When a song is found, the same rules apply as above for transfers being cancelled.

This program is a "continuation" of Java Napster v0.6. It's 25% more code added on top of the original program, which was just a regular napster client. The project name has been changed and taken over by me because it's such a new direction for the project. I actually would like to port this to gnutella, if I can ever get my hands on some source code.