Log Message: |
Adding project-level ClassRealm, which serves as a nexus for extensions. Extensions are loaded into separate ClassRealm instances, then scanned for components. These ComponentDescriptors are then used to add an import from the extension realm back to the project-session realm, and then the descriptor is added to the container with the project realm as its RealmId. From here, the registerWagons() method has been changed to use the map of projectSessions, and iterates through each project-level realm, setting the lookup-realm, then calling findAndRegisterWagons(..) for each. Also, the plugin manager has been changed to use the project-realm for loading plugins if it exists (the plugin realm becomes a child of the project realm, which should allow plugins to vary by project within a single reactor, though I haven't tested that yet).
Also, shading the embedder to hide the jdom classes, and adjusting the assembly appropriately.
Final thing: I'm rolling back some changes I accidentally made to the CLIManager the other day, which breaks the release plugin because the long options were removed for some reason (save action in Eclipse; don't ask).
|