Allow multiple cache entry of the same URL to exists in the cache, if they have the same URL but different codebase host IP. Whenever we load a cached JAR, we make sure the cached IP address(if available) matches the IP address lookup of the codebase host currently. This limits the maximum number of JAR download to the number of IP address a codebase host can have.
Cache entry update will be applied to the entry of the matching codebase IP address only.
Also changes the cache viewer to adapt to this change. We will not display duplicate cache entry because of the different IP address. when the user choose to remove a cache entry from the cache viewer, we remove all instances (different codebase IP address) of the cache entry.