Besides the base components of JDMK several services and tools exist to simplify the development of management applications and agents (cf. figure 3).
Repository Service is used for the registration process. Beans may be registered either as volatile or persistent within the CMF.
With the aid of the Filtering Service it is possible to define filtering rules selecting all M-Beans which are registered at a CMF that match the filtering rule. Such rules may be defined over methods, attributes with their concrete values and over object names and their single parts.
To determine the properties and methods which are supported by an M-Bean the Metadata Service, based on the Java Reflection API, can be used. The Metadata, the Repository and the Filtering Service are called Base Services of the CMF.
The Discovery Service is used to detect all active CMFs. Therefore an IP-broadcast is sent by the service and all CMFs that have registered a so-called Discovery Responder reply to the broadcast message.
M-Let, Launcher and Bootstrap Service are used for the dynamic
extension of agents, for update mechanisms and for
bootstrapping.
The M-Let Service (Management Applet Service) offers the possibility to download and configure M-Beans
dynamically. For this purpose a new HTML tag (<MLET>) is
defined. The M-Let Service operates according to the following steps
(see also figure 4):
The Bootstrap Service, which is implemented as a stand-alone Java application, simplifies the distribution and instantiation of JDMK agents. This service is used to download implementation classes of an agent from a local or remote server. Therefore the Bootstrap Service initializes the CMF, starts the M-Let Service, loads the necessary classes, initializes, registers and starts all the required M-Beans and services of the agent.
Two compilers, mogen and mibgen, are delivered with JDMK
as development tools. The mogen is used
to create C-Beans from M-Bean .class files.
For developing an JDMK based SNMP Agent for a device mibgen can be used.
If SNMP-MIB files are available for the managed device, the
mibgen Compiler is able to use them to
create M-Beans representing the MIB. The M-Beans have to be enlarged
with functions e.g., implementing access to resources of the managed
system.