[CLEANUP] - Refactored xml domain entity serialisation into separate class to improve separation of concerns and to ease "mockability"
[CLEANUP] - Refactored code to facilitate creation of unit tests
- Set security helper as PluginService instance dependency instead of global static variable access
- Set document builder as PluginService instance dependency instead of global static variable access
- Refactored access to metadata plugins list to a separate service
[CLEANUP] - Refactored code to improve maintainability and facilitate unit testing
- Added parsing methods from String in MarketplaceXmlSerializer
- Moved DocumentBuilderFactory dependency from PluginService and RemoteMetadataPluginProvider to MarketplaceXmlSerializer
- Set IPluginResourceLoader as PluginService instance dependency instead of global static variable access
- Encapsulated getting Pentaho session and PluginManager in an instance method of PluginService to facilitate mocking
- Removed PluginService dependency on PluginFactory, PluginVersionFactory and CategoryFactory.
- Added PluginService dependency on MarketplaceXmlSerializer and IRemotePluginProvider. These are set via decency injection configured in the plugin.spring.xml.template.
[CLEANUP] - Added unit tests for serialization
- Implemented equals in domain entities for serialization tests
[CLEANUP] - Added unit tests for installed version deserialization
[CLEANUP] - Added PluginService unit tests
- IPluginResourceLoader and ISecurityHelper dependencies are now injected via the PluginService constructor
[CLEANUP] - Refactored tests for better readability
- Started using hamcrest matchers for unit tests
Merge pull request #59 from graimundo/master

[CLEANUP] - Refactored and added Unit tests