org.objectweb.jonas.jmx
Class AbsJmxServiceImpl

java.lang.Object
  extended byjavax.management.NotificationBroadcasterSupport
      extended byorg.objectweb.jonas.management.ReconfigDispatcher
          extended byorg.objectweb.jonas.service.AbsServiceImpl
              extended byorg.objectweb.jonas.jmx.AbsJmxServiceImpl
All Implemented Interfaces:
JmxService, javax.management.NotificationBroadcaster, javax.management.NotificationEmitter, ReconfigDispatcherMBean, Service
Direct Known Subclasses:
JmxServiceImpl

public abstract class AbsJmxServiceImpl
extends AbsServiceImpl
implements JmxService

JMX Service implementation. This singleton class must exist in each jonas server that is to be administered via JMX. Its main role is to initialize the service (the singleton object).

Author:
Guillaume Riviere, Michel Bruno, Adriana Danes

Field Summary
 
Fields inherited from class org.objectweb.jonas.management.ReconfigDispatcher
RECONFIG_TYPE, SAVE_RECONFIG_TYPE
 
Constructor Summary
AbsJmxServiceImpl()
           
 
Method Summary
 void doInit(javax.naming.Context ctx)
          Init the Service.
abstract  void doStart()
          Start the Service Initialization of the service is already done.
abstract  void doStop()
          Stop this service
abstract  javax.management.remote.JMXServiceURL[] getConnectorServerURLs()
           
 java.lang.String getDomainName()
          Return the domain's name of this service.
 javax.management.MBeanServer getJmxServer()
           
protected  java.util.Map getJmxServiceUrls()
           
protected static org.objectweb.util.monolog.api.Logger getLogger()
           
 java.lang.String getServerName()
           
protected  void releaseJmxServer()
          Remove internal references to the MBeanServer.
 
Methods inherited from class org.objectweb.jonas.service.AbsServiceImpl
getJonasServerName, getName, init, isStarted, setName, start, stop
 
Methods inherited from class org.objectweb.jonas.management.ReconfigDispatcher
addNotificationListener, getFilter, getHandback, getListener, getNotificationInfo, initLogger, removeNotificationListener, sendReconfigNotification, sendSaveNotification
 
Methods inherited from class javax.management.NotificationBroadcasterSupport
handleNotification, removeNotificationListener, sendNotification
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.objectweb.jonas.jmx.JmxService
getRmiConnectorName
 
Methods inherited from interface org.objectweb.jonas.service.Service
getName, init, isStarted, setName, start, stop
 

Constructor Detail

AbsJmxServiceImpl

public AbsJmxServiceImpl()
Method Detail

getLogger

protected static org.objectweb.util.monolog.api.Logger getLogger()
Returns:
Logger logger object

getDomainName

public java.lang.String getDomainName()
Description copied from class: AbsServiceImpl
Return the domain's name of this service.

Specified by:
getDomainName in interface JmxService
Overrides:
getDomainName in class AbsServiceImpl
Returns:
The name of the management domain

getJmxServer

public javax.management.MBeanServer getJmxServer()
Specified by:
getJmxServer in interface JmxService
Returns:
The local reference of the MBean server

getJmxServiceUrls

protected java.util.Map getJmxServiceUrls()
Returns:
the JMXServiceURLs to be used to construct the connector servers attached to the MBean server.

doInit

public void doInit(javax.naming.Context ctx)
            throws ServiceException
Init the Service. Create the MBeanServer. Configuration information is passed through a Context object.

Specified by:
doInit in class AbsServiceImpl
Parameters:
ctx - context containing service initilaisation parameters
Throws:
ServiceException - the service could not be initialized

doStart

public abstract void doStart()
                      throws ServiceException
Start the Service Initialization of the service is already done.

Specified by:
doStart in class AbsServiceImpl
Throws:
ServiceException - the service could not be started

doStop

public abstract void doStop()
                     throws ServiceException
Stop this service

Specified by:
doStop in class AbsServiceImpl
Throws:
ServiceException - the service could not be stoped

getConnectorServerURLs

public abstract javax.management.remote.JMXServiceURL[] getConnectorServerURLs()
Specified by:
getConnectorServerURLs in interface JmxService

getServerName

public java.lang.String getServerName()
Specified by:
getServerName in interface JmxService
Returns:
The name of the JOnAS server

releaseJmxServer

protected void releaseJmxServer()
Remove internal references to the MBeanServer.