org.objectweb.jonas.management.j2eemanagement
Class J2EEDomain

java.lang.Object
  extended byjavax.management.NotificationBroadcasterSupport
      extended byorg.objectweb.jonas.management.ReconfigDispatcher
          extended byorg.objectweb.jonas.management.j2eemanagement.J2EEManagedObject
              extended byorg.objectweb.jonas.management.j2eemanagement.J2EEDomain
All Implemented Interfaces:
java.util.EventListener, javax.management.MBeanRegistration, javax.management.NotificationBroadcaster, javax.management.NotificationEmitter, javax.management.NotificationListener, ReconfigDispatcherMBean

public class J2EEDomain
extends J2EEManagedObject
implements javax.management.MBeanRegistration, javax.management.NotificationListener

Implements a managed object which represents a management domain.

Author:
Adriana Danes, Vivek Lakshmanan

Field Summary
 
Fields inherited from class org.objectweb.jonas.management.j2eemanagement.J2EEManagedObject
J2EE_TYPE_APPLICATION, J2EE_TYPE_SERVER, NAME
 
Fields inherited from class org.objectweb.jonas.management.ReconfigDispatcher
RECONFIG_TYPE, SAVE_RECONFIG_TYPE
 
Constructor Summary
J2EEDomain(java.lang.String objectName, boolean stateManageable, boolean statisticsProvider, boolean eventProvider)
          MBean constructor
 
Method Summary
 void addServer(java.lang.String serverName, java.lang.String[] connectorServerURLs)
          Add an object name to the servers list.
 java.lang.String[] getConnectorServerURLs(java.lang.String serverName)
          Return the connector server urls for a given server.
 java.lang.String[] getServerNames()
          Returns the names of the servers currently managed.
 java.lang.String[] getServers()
           
 void handleNotification(javax.management.Notification notification, java.lang.Object handback)
           
 void postDeregister()
           
 void postRegister(java.lang.Boolean registrationDone)
          Add J2EEDomain MBean (myself) as listener to registration/unregistration notifications of JOnAS management MBeans.
 void preDeregister()
           
 javax.management.ObjectName preRegister(javax.management.MBeanServer server, javax.management.ObjectName name)
           
 java.lang.String removeServer(java.lang.String serverName)
          Remove an object name from the servers list.
 
Methods inherited from class org.objectweb.jonas.management.j2eemanagement.J2EEManagedObject
getObjectName, isEventProvider, isStateManageable, isStatisticsProvider
 
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
 

Constructor Detail

J2EEDomain

public J2EEDomain(java.lang.String objectName,
                  boolean stateManageable,
                  boolean statisticsProvider,
                  boolean eventProvider)
           throws javax.management.JMException
MBean constructor

Parameters:
objectName - object name of the managed object
stateManageable - if true, this managed object implements J2EE State Management Model
statisticsProvider - if true, this managed object implements the J2EE StatisticProvide Model
eventProvider - if true, this managed object implements the J2EE EventProvider Model
Throws:
javax.management.JMException - ..
Method Detail

getServers

public java.lang.String[] getServers()
Returns:
The list of object names corresponding to the servers associated with this domain

getServerNames

public java.lang.String[] getServerNames()
Returns the names of the servers currently managed.

Returns:
Names of servers currently managed.

getConnectorServerURLs

public java.lang.String[] getConnectorServerURLs(java.lang.String serverName)
Return the connector server urls for a given server.

Parameters:
serverName - the server we are inquiring for
Returns:
The list of connector server urls corresponding to the given server

addServer

public void addServer(java.lang.String serverName,
                      java.lang.String[] connectorServerURLs)
Add an object name to the servers list.

Parameters:
serverName - ObjectName (String form) of a J2EEServer to be add in this domain
connectorServerURLs - connector server urls for this server

removeServer

public java.lang.String removeServer(java.lang.String serverName)
Remove an object name from the servers list.

Parameters:
serverName - ObjectName (String form) of a J2EEServer to be removed from this domain
Returns:
Object name of the removed J2EEServer

preRegister

public javax.management.ObjectName preRegister(javax.management.MBeanServer server,
                                               javax.management.ObjectName name)
                                        throws java.lang.Exception
Specified by:
preRegister in interface javax.management.MBeanRegistration
Parameters:
server - The MBean server in which the MBean will be registered.
name - The object name of the MBean
Returns:
The object name of the MBean
Throws:
java.lang.Exception

postRegister

public void postRegister(java.lang.Boolean registrationDone)
Add J2EEDomain MBean (myself) as listener to registration/unregistration notifications of JOnAS management MBeans.

Specified by:
postRegister in interface javax.management.MBeanRegistration
Parameters:
registrationDone - Indicates whether or not the MBean has been successfully registered

preDeregister

public void preDeregister()
                   throws java.lang.Exception
Specified by:
preDeregister in interface javax.management.MBeanRegistration
Throws:
java.lang.Exception
See Also:
MBeanRegistration.preDeregister()

postDeregister

public void postDeregister()
Specified by:
postDeregister in interface javax.management.MBeanRegistration
See Also:
MBeanRegistration.postDeregister()

handleNotification

public void handleNotification(javax.management.Notification notification,
                               java.lang.Object handback)
Specified by:
handleNotification in interface javax.management.NotificationListener
Parameters:
notification - received notification
handback - received handback