i now have finalized the services and how they are wired. the previous approach with EnvironmentFactory.getCommandService() was not extensible towards sub projects.
now the idea is as follows: The user always has to obtain an EnvironmentFactory object with one of the following methods:
EnvironmentFactory environmentFactory = EnvironmentFactory.parseResource("resource"); EnvironmentFactory environmentFactory = EnvironmentFactory.parseInputStream(stream); EnvironmentFactory.parseXxx(...);
CommandService commandService = environmentFactory.get(CommandService.class); PvmService pvmService = environmentFactory.get(PvmService.class); IdentityService identityService = environmentFactory.get(IdentityService.class);
<environment> <application> <command-service /> <pvm-service /> ... </application> <block> ... </block> </environment>