WEB-60: Serve up Openfire plugins from Maven repository.
The directory from which Openfire plugins are served is now expected to be a Maven repository (or at least, have that file structure).
This change aims to make 'publishing' a plugin seamless: when an artifact is published in Maven, it automatically becomes available
through the website.
An added benefit is that these plugins now have a permanent HTTP-based endpoint, which in turn also allows for an archive to be provided.
A page that displays this archive (all released versions of a plugin, plus the last few snapshot builds) has been added.
The update check from Openfire will also make use of this new plugin repository.
To limit the disk space usage, the directory crawling result is cached (for a number of minutes).
Finally, a couple of integration tests are added, which verify that both the HTTP endpoints that serve plugins (and their content), as
well as the Openfire-based update-check endpoints behave as expected.
WEB-60: Removing unused plugin icon download functionality.
This commit removes functionality that appears to serve the icon of a plugin, when a specificly crafted request was made.
I've grepped through 1.9G of access log files, using the command below, and did not find any relevant request.
grep "plugin=" * | grep "img"
This leads me to believe that we can remove this functionality, and reduce the complexity of the code.