org.jboss.ha.jmx
Interface HAServiceMBean

All Superinterfaces:
NotificationBroadcaster (src) , Service (src) , ServiceMBean (src)
All Known Subinterfaces:
HASingletonControllerMBean (src) , HASingletonMBean (src)
All Known Implementing Classes:
HAServiceMBeanSupport (src) , HASingletonController (src) , HASingletonSupport (src)

public interface HAServiceMBean
extends ServiceMBean (src) , NotificationBroadcaster (src)

HA-Service interface. Defines common functionality for partition symmetric (farming) services.


Field Summary
 
Fields inherited from interface org.jboss.system.ServiceMBean (src)
CREATE_EVENT, CREATED, DESTROY_EVENT, DESTROYED, FAILED, REGISTERED, START_EVENT, STARTED, STARTING, states, STOP_EVENT, STOPPED, STOPPING, UNREGISTERED
 
Method Summary
 void callMethodOnPartition(java.lang.String methodName, java.lang.Object[] args)
          Convenience method for broadcasting a call to all members of a partition.
 java.io.Serializable getDistributedState(java.lang.String key)
          Convenience method for sharing state across a cluster partition.
 java.lang.String getPartitionName()
          Name of the underlying partition that determine the cluster to use.
 void sendNotification(Notification (src)  notification)
          Broadcast the notification to the remote listener nodes (if any) and then invoke super.sendNotification() to notify local listeners.
 void setDistributedState(java.lang.String key, java.io.Serializable value)
          Convenience method for sharing state across a cluster partition.
 void setPartitionName(java.lang.String partitionName)
          Set the name of the underlying partition that determine the cluster to use.
 
Methods inherited from interface org.jboss.system.ServiceMBean (src)
getName, getState, getStateString, jbossInternalLifecycle
 
Methods inherited from interface org.jboss.system.Service (src)
create, destroy, start, stop
 
Methods inherited from interface javax.management.NotificationBroadcaster (src)
addNotificationListener, getNotificationInfo, removeNotificationListener
 

Method Detail

getPartitionName

public java.lang.String getPartitionName()
Name of the underlying partition that determine the cluster to use.


setPartitionName

public void setPartitionName(java.lang.String partitionName)
Set the name of the underlying partition that determine the cluster to use. Can be set only when the MBean is not in a STARTED or STARTING state.


callMethodOnPartition

public void callMethodOnPartition(java.lang.String methodName,
                                  java.lang.Object[] args)
                           throws java.lang.Exception
Convenience method for broadcasting a call to all members of a partition.

Parameters:
methodName -
args -
Throws:
java.lang.Exception

getDistributedState

public java.io.Serializable getDistributedState(java.lang.String key)
Convenience method for sharing state across a cluster partition. Delegates to the DistributedStateService

Parameters:
key - key for the distributed object
Returns:
Serializable the distributed object

setDistributedState

public void setDistributedState(java.lang.String key,
                                java.io.Serializable value)
                         throws java.lang.Exception
Convenience method for sharing state across a cluster partition. Delegates to the DistributedStateService

Parameters:
key - key for the distributed object
value - the distributed object
Throws:
java.lang.Exception

sendNotification

public void sendNotification(Notification (src)  notification)
Broadcast the notification to the remote listener nodes (if any) and then invoke super.sendNotification() to notify local listeners.

Parameters:
notification - sent out to local listeners and other nodes. It should be serializable. It is recommended that the source of the notification is an ObjectName of an MBean that is is available on all nodes where the broadcaster MBean is registered.
See Also:
NotificationBroadcasterSupport.sendNotification(Notification)