JBoss MicroKernel Definitions
This page defines the terminology used in the MicroKernel design.
Some terms can be used interchangeably, this page serves to give more exact definitions to remove confusion.
Kernel - a generic term for the services that make up the JBoss MicroKernel.
POJO/bean - the object under management by the kernel.
Service - a POJO that has a lifecycle.
IOC (inversion of control) - the POJO relies on the kernel/container to inject the relevent object in a usable state.
Injection - the idea that a POJO declares it requires an Object of a certain type and leaves it to external processing to provide the Object.
Lifecycle - routines that provide runtime processing beyond basic configuration/injection. e.g. binding sockets
Configuration - information used to configure a POJO, including attribute values, injections, etc.
Descriptor - metadata about a POJO, e.g. what configuration is required
Profile - defines which POJOs should be instantiated and which Services should be started and when.
Container - a wrapper for a POJO that adds extra behaviour (aspects). Also, when in a non-JBoss environment, the container where the JBoss kernel is deployed.
Deployer - code that parses configuration files to create POJOs, metadata, config, etc.
System - a general area of the application - e.g. JMS
Subsystem - a specific part of a system, e.g. JMS persistence
Dependency - where a POJO, classes, binding uses another (e.g. an EJB depends upon a jndi binding)
Subservice - where one service is made up of other services (e.g. an EJB has a cache)
VFS (virtual file system) - frees deployers from the need to worry about the physical deployment