Centralized invocation of ElementInfoFactory to one place (DefinitionResolver). Added temporary helper method signature responsible for plugin registration (by class type and namespace) to ConfigurableResolver. Modified pom.xml to include support for guice multibinding extension.
Removed ElementDefProxy. Places in code where new ElementDefProxy was created have been replaced with invocation of InjectorHelper (ConfigurableResolver). It still is far away from separation of concerns and good design. No time to fix the tests.
Removed deprecated constructor from DefinitionResolver (initialization of post processors and reload of definitions). Moved initialization code to DefinitionResolverProvider. From now on list of packages for resolver post processors is configured directly in ScraperModule.
Technical commit. Make DefinitionResolver instantiated by Guice. Removed all references to DefinitionResolver.INSTANCE and replaced them with call to Guice injector. Moved some of the helper methods from DefinitionResolver to ConfigurableResolver interface (only partial refactoring. It needs to be decide if all are still needed and where they should be placed).
Refactored XML configuration parser (Created Guice aware SAXConfigParse class, removed unused XMLParser with static parsing method).
Removed unused import from XmlNode. Referenced delegate getLineNumber and getColumnNumber instead XmlNode in ElementDefProxy. Added configuration version to Config. Previously guice needed to determine configuration version based on xml namespace which was the bad thing in terms of encapsulation.
Make rootNode property private (XmlParser). Use direct reference to DefinitionResolver instance (CaseDef) instead of assigning it to property.
Removed unused reference to DefinitionResolver.INSTANCE from LoopDef, RegexpDef (webharvest-core) and CommandLine (webharvest-ide)
It is no longer possible to register plugins via command line for webharvest-ide.
Added workaround the sticker Java 8 (profile to pom.xml which is automatically activated).