Add Coverity badge.
Call super.finalize() add the end of finalize() method.

This is necessary in case parents must also dispose some resources.
Move AnnounceCacheTest into a directory corresponding to the package.
Implement hashCode() methods.

According to the Java language specification a class overriding equals()
should also override hashCode().
Add missing curly braces around if's.
Rename constants to comply with the Java Coding guidelines.
Comment that an exception is deliberatly ignored.
Comment that an exception is deliberatly ignored.
Use interfaces for collections instead of concrete classes.
Remove uncommented code.
Public methods should throw only one exception.
Constants should be name upper case.
Avoid NullPointerExxceptions when comparing with string literals.
Rename class to be more aligned to the JSON-RPC specification.
Use spaces instead of tabs for indentation.

The Java coding conventions require this.
Move member variables to the beginning of the class.

This is required by the Java coding conventions.
Remove useless import.
Remove useless comments.
Throws declaration should not be redundant.

NullPointerException is a RuntimeException, so it need not to be
specified.
Remove useless import.