JBoss MicroKernel Core
Goals
Small memory footprint - extend behaviour is optionally pluggable.
Backward compatibility with current JMX kernel.
Primary responsibilty is to be the glue between POJOs.
Uses Unified Interceptors to implement any container.
Core Services
Bootstrap - a helper class for bootstrapping the kernel.
Controller - managed lifecycle/state machine and dependencies.
Registry - holds deployed POJO information.
Configurator - instantiates and glues POJOs together including any container.
Deployer - holds deployment aspects and applies them.
Bus - allows detyped/detaching between POJOs.
Repository - holds metadata about POJOs.
Profile - holds which POJOs are available and whether they should be started.
Bootstrap
Provides a simple mechanism to activate the kernel.
Controller
The controller is responsible for making sure the POJOs are instantiated, configured and started according to profile, dependencies and system/subsystem/service/subservice configuration/lifecycle.
POJO/Service configurations are added/removed in the controller which then takes over.
Registry
Stores information about the deployed POJOs.
Configurator
Instantiates and configures the POJOs, adding any container.
Deployer
Holds deployment aspects and applies them when asked to deploy.
Bus
Uses the registry to provide detyped/detached invocations, similar to the JMX MBeanServer.
Repository
Holds metadata about POJOs, both deployed and available but not deployed.
Profile
Defines which Systems, Subsystems, POJOs are deployed and which services are started automatically
or available for manual start.
Design
Comments