|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.jboss.messaging.core.plugin.JDBCSupport
org.jboss.messaging.core.plugin.postoffice.DefaultPostOffice
org.jboss.messaging.core.plugin.postoffice.cluster.DefaultClusteredPostOffice
Nested Class Summary |
Nested classes inherited from class org.jboss.messaging.core.plugin.JDBCSupport |
JDBCSupport.TransactionWrapper |
Field Summary | |
static java.lang.String |
ADDRESS_INFO_KEY
|
static java.lang.String |
FAILED_OVER_FOR_KEY
|
Fields inherited from class org.jboss.messaging.core.plugin.postoffice.DefaultPostOffice |
conditionFactory, conditionMap, currentNodeId, filterFactory, lock, ms, nameMaps, pm, tr |
Fields inherited from class org.jboss.messaging.core.plugin.JDBCSupport |
ds, sqlProperties |
Fields inherited from interface org.jboss.messaging.core.plugin.contract.ClusteredPostOffice |
FAILOVER_COMPLETED_NOTIFICATION, VIEW_CHANGED_NOTIFICATION |
Constructor Summary | |
DefaultClusteredPostOffice(javax.sql.DataSource ds,
TransactionManager tm,
java.util.Properties sqlProperties,
boolean createTablesOnStartup,
int nodeId,
java.lang.String officeName,
MessageStore ms,
PersistenceManager pm,
TransactionRepository tr,
FilterFactory filterFactory,
ConditionFactory conditionFactory,
java.lang.String groupName,
JChannelFactory JChannelFactory,
long stateTimeout,
long castTimeout,
MessagePullPolicy redistributionPolicy,
ClusterRouterFactory rf,
FailoverMapper failoverMapper,
long statsSendPeriod,
int poolSize)
|
Method Summary | |
void |
addBindingFromCluster(int nodeId,
java.lang.String queueName,
java.lang.String conditionText,
java.lang.String filterString,
long channelID,
boolean durable)
|
void |
addNotificationListener(NotificationListener listener,
NotificationFilter filter,
java.lang.Object object)
|
protected void |
addToConditionMap(Binding binding)
|
void |
asyncSendRequest(org.jboss.messaging.core.plugin.postoffice.cluster.ClusterRequest request)
|
void |
asyncSendRequest(org.jboss.messaging.core.plugin.postoffice.cluster.ClusterRequest request,
int nodeId)
|
Binding |
bindClusteredQueue(Condition condition,
LocalClusteredQueue queue)
Bind a queue to the post office under a specific condition such that it is available across the cluster. |
void |
checkTransactions(java.lang.Integer nodeId)
Check for any transactions that need to be committed or rolled back |
void |
commitTransaction(org.jboss.messaging.core.plugin.postoffice.cluster.TransactionId id)
|
protected Binding |
createBinding(int nodeID,
Condition condition,
java.lang.String queueName,
long channelId,
Filter filter,
boolean durable,
boolean isClustered)
|
protected Binding |
createBinding(int nodeId,
Condition condition,
java.lang.String queueName,
long channelId,
java.lang.String filterString,
boolean durable,
boolean isClustered)
|
static java.lang.String |
dumpClusterMap(java.util.Map map)
|
static java.lang.String |
dumpFailoverMap(java.util.Map map)
|
java.util.Map |
get(java.io.Serializable key)
Return a node-mapped replicated data. |
FailoverMapper |
getFailoverMapper()
TODO - this method doesn't belong here... |
java.util.Collection |
getHoldingTransactions()
MUST ONLY be used for testing! |
int |
getNodeId()
|
java.util.Set |
getNodeIDView()
Returns a set of nodeIDs (integers) representing the IDs of cluster's nodes. |
MBeanNotificationInfo[] |
getNotificationInfo()
|
PooledExecutor |
getPooledExecutor()
|
void |
handleMessagePullResult(int remoteNodeId,
long holdingTxId,
java.lang.String queueName,
Message message)
|
void |
handleNodeLeft(int nodeId)
|
void |
holdTransaction(org.jboss.messaging.core.plugin.postoffice.cluster.TransactionId id,
org.jboss.messaging.core.plugin.postoffice.cluster.ClusterTransaction tx)
|
boolean |
isLocal()
|
java.util.Collection |
listAllBindingsForCondition(Condition condition)
|
protected void |
loadBindings(boolean nonClusteredOnly)
|
java.lang.String |
printBindingInformation()
|
void |
put(java.io.Serializable key,
java.io.Serializable replicant)
Broadcast data across the cluster, updating replication maps on all nodes, including the local node. |
void |
putReplicantLocally(int originatorNodeID,
java.io.Serializable key,
java.io.Serializable replicant)
|
boolean |
referenceExistsInStorage(long channelID,
long messageID)
|
void |
registerListener(ReplicationListener listener)
|
boolean |
remove(java.io.Serializable key)
Updates the replication maps across the cluster by removing the data corresponding to the give key. |
void |
removeBindingFromCluster(int nodeId,
java.lang.String queueName)
|
protected void |
removeFromConditionMap(Binding binding)
|
void |
removeNotificationListener(NotificationListener listener)
|
boolean |
removeReplicantLocally(int originatorNodeID,
java.io.Serializable key)
|
void |
rollbackTransaction(org.jboss.messaging.core.plugin.postoffice.cluster.TransactionId id)
|
boolean |
route(MessageReference ref,
Condition condition,
Transaction tx)
Route a reference. |
void |
routeFromCluster(Message message,
java.lang.String routingKeyText,
java.util.Map queueNameNodeIdMap)
|
void |
sendQueueStats()
|
void |
setFail(boolean beforeCommit,
boolean afterCommit,
boolean handleResult)
MUST ONLY be used for testing! |
void |
start()
|
void |
stop(boolean sendNotification)
|
java.lang.String |
toString()
|
Binding |
unbindClusteredQueue(java.lang.String queueName)
Unbind a clustered queue from the post office. |
void |
unregisterListener(ReplicationListener listener)
|
void |
updateQueueStats(int nodeId,
java.util.List statsList)
|
Methods inherited from class org.jboss.messaging.core.plugin.postoffice.DefaultPostOffice |
addBinding, addToNameMap, bindQueue, deleteBinding, getBindingforChannelId, getBindingForQueueName, getBindingsForCondition, getDefaultDDLStatements, getDefaultDMLStatements, getOfficeName, insertBinding, internalGetBindingForQueueName, listBindingsForConditionInternal, removeBinding, removeFromNameMap, stop, unbindQueue |
Methods inherited from class org.jboss.messaging.core.plugin.JDBCSupport |
closeConnection, closeResultSet, closeStatement, getSQLStatement, ignoreVerificationOnStartup |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Methods inherited from interface org.jboss.messaging.core.plugin.contract.PostOffice |
bindQueue, getBindingforChannelId, getBindingForQueueName, getBindingsForCondition, getOfficeName, unbindQueue |
Methods inherited from interface org.jboss.messaging.core.plugin.contract.MessagingComponent |
stop |
Field Detail |
public static final java.lang.String ADDRESS_INFO_KEY
public static final java.lang.String FAILED_OVER_FOR_KEY
Constructor Detail |
public DefaultClusteredPostOffice(javax.sql.DataSource ds, TransactionManager tm, java.util.Properties sqlProperties, boolean createTablesOnStartup, int nodeId, java.lang.String officeName, MessageStore ms, PersistenceManager pm, TransactionRepository tr, FilterFactory filterFactory, ConditionFactory conditionFactory, java.lang.String groupName, JChannelFactory JChannelFactory, long stateTimeout, long castTimeout, MessagePullPolicy redistributionPolicy, ClusterRouterFactory rf, FailoverMapper failoverMapper, long statsSendPeriod, int poolSize) throws java.lang.Exception
Method Detail |
public static java.lang.String dumpFailoverMap(java.util.Map map)
map
- - Mappublic static java.lang.String dumpClusterMap(java.util.Map map)
map
- - Mappublic void start() throws java.lang.Exception
start
in interface MessagingComponent
start
in class DefaultPostOffice
java.lang.Exception
public void stop(boolean sendNotification) throws java.lang.Exception
stop
in class DefaultPostOffice
java.lang.Exception
public void addNotificationListener(NotificationListener listener, NotificationFilter filter, java.lang.Object object) throws java.lang.IllegalArgumentException
java.lang.IllegalArgumentException
public void removeNotificationListener(NotificationListener listener) throws ListenerNotFoundException
ListenerNotFoundException
public MBeanNotificationInfo[] getNotificationInfo()
public java.util.Set getNodeIDView()
Peer
getNodeIDView
in interface Peer
public Binding bindClusteredQueue(Condition condition, LocalClusteredQueue queue) throws java.lang.Exception
ClusteredPostOffice
bindClusteredQueue
in interface ClusteredPostOffice
condition
- - the condition to be used when routing references.
java.lang.Exception
public Binding unbindClusteredQueue(java.lang.String queueName) throws java.lang.Throwable
ClusteredPostOffice
unbindClusteredQueue
in interface ClusteredPostOffice
queueName
- - the unique name of the queue.
java.lang.Throwable
public java.util.Collection listAllBindingsForCondition(Condition condition) throws java.lang.Exception
listAllBindingsForCondition
in interface ClusteredPostOffice
java.lang.Exception
public void addBindingFromCluster(int nodeId, java.lang.String queueName, java.lang.String conditionText, java.lang.String filterString, long channelID, boolean durable) throws java.lang.Exception
addBindingFromCluster
in interface org.jboss.messaging.core.plugin.postoffice.cluster.PostOfficeInternal
java.lang.Exception
public void removeBindingFromCluster(int nodeId, java.lang.String queueName) throws java.lang.Exception
removeBindingFromCluster
in interface org.jboss.messaging.core.plugin.postoffice.cluster.PostOfficeInternal
java.lang.Exception
public void handleNodeLeft(int nodeId) throws java.lang.Exception
handleNodeLeft
in interface org.jboss.messaging.core.plugin.postoffice.cluster.PostOfficeInternal
java.lang.Exception
public void putReplicantLocally(int originatorNodeID, java.io.Serializable key, java.io.Serializable replicant) throws java.lang.Exception
putReplicantLocally
in interface org.jboss.messaging.core.plugin.postoffice.cluster.PostOfficeInternal
originatorNodeID
- - the ID of the node that initiated the modification.
java.lang.Exception
public boolean removeReplicantLocally(int originatorNodeID, java.io.Serializable key) throws java.lang.Exception
removeReplicantLocally
in interface org.jboss.messaging.core.plugin.postoffice.cluster.PostOfficeInternal
originatorNodeID
- - the ID of the node that initiated the modification.
java.lang.Exception
public void routeFromCluster(Message message, java.lang.String routingKeyText, java.util.Map queueNameNodeIdMap) throws java.lang.Exception
routeFromCluster
in interface org.jboss.messaging.core.plugin.postoffice.cluster.PostOfficeInternal
java.lang.Exception
public void asyncSendRequest(org.jboss.messaging.core.plugin.postoffice.cluster.ClusterRequest request) throws java.lang.Exception
asyncSendRequest
in interface org.jboss.messaging.core.plugin.postoffice.cluster.PostOfficeInternal
java.lang.Exception
public void asyncSendRequest(org.jboss.messaging.core.plugin.postoffice.cluster.ClusterRequest request, int nodeId) throws java.lang.Exception
asyncSendRequest
in interface org.jboss.messaging.core.plugin.postoffice.cluster.PostOfficeInternal
java.lang.Exception
public void holdTransaction(org.jboss.messaging.core.plugin.postoffice.cluster.TransactionId id, org.jboss.messaging.core.plugin.postoffice.cluster.ClusterTransaction tx) throws java.lang.Exception
holdTransaction
in interface org.jboss.messaging.core.plugin.postoffice.cluster.PostOfficeInternal
java.lang.Exception
public void commitTransaction(org.jboss.messaging.core.plugin.postoffice.cluster.TransactionId id) throws java.lang.Throwable
commitTransaction
in interface org.jboss.messaging.core.plugin.postoffice.cluster.PostOfficeInternal
java.lang.Throwable
public void rollbackTransaction(org.jboss.messaging.core.plugin.postoffice.cluster.TransactionId id) throws java.lang.Throwable
rollbackTransaction
in interface org.jboss.messaging.core.plugin.postoffice.cluster.PostOfficeInternal
java.lang.Throwable
public void updateQueueStats(int nodeId, java.util.List statsList) throws java.lang.Exception
updateQueueStats
in interface org.jboss.messaging.core.plugin.postoffice.cluster.PostOfficeInternal
java.lang.Exception
public void sendQueueStats() throws java.lang.Exception
sendQueueStats
in interface org.jboss.messaging.core.plugin.postoffice.cluster.PostOfficeInternal
java.lang.Exception
public boolean referenceExistsInStorage(long channelID, long messageID) throws java.lang.Exception
referenceExistsInStorage
in interface org.jboss.messaging.core.plugin.postoffice.cluster.PostOfficeInternal
java.lang.Exception
public void handleMessagePullResult(int remoteNodeId, long holdingTxId, java.lang.String queueName, Message message) throws java.lang.Throwable
handleMessagePullResult
in interface org.jboss.messaging.core.plugin.postoffice.cluster.PostOfficeInternal
java.lang.Throwable
public PooledExecutor getPooledExecutor()
getPooledExecutor
in interface org.jboss.messaging.core.plugin.postoffice.cluster.PostOfficeInternal
public void put(java.io.Serializable key, java.io.Serializable replicant) throws java.lang.Exception
Replicator
put
in interface Replicator
java.lang.Exception
public java.util.Map get(java.io.Serializable key) throws java.lang.Exception
Replicator
get
in interface Replicator
java.lang.Exception
public boolean remove(java.io.Serializable key) throws java.lang.Exception
Replicator
remove
in interface Replicator
java.lang.Exception
public void registerListener(ReplicationListener listener)
registerListener
in interface Replicator
public void unregisterListener(ReplicationListener listener)
unregisterListener
in interface Replicator
public FailoverMapper getFailoverMapper()
Replicator
getFailoverMapper
in interface Replicator
public boolean route(MessageReference ref, Condition condition, Transaction tx) throws java.lang.Exception
PostOffice
route
in interface PostOffice
route
in class DefaultPostOffice
java.lang.Exception
public boolean isLocal()
isLocal
in interface PostOffice
isLocal
in class DefaultPostOffice
public void checkTransactions(java.lang.Integer nodeId) throws java.lang.Throwable
java.lang.Throwable
public int getNodeId()
public java.lang.String toString()
toString
in class DefaultPostOffice
public java.lang.String printBindingInformation()
printBindingInformation
in class DefaultPostOffice
public void setFail(boolean beforeCommit, boolean afterCommit, boolean handleResult)
public java.util.Collection getHoldingTransactions()
protected void addToConditionMap(Binding binding)
addToConditionMap
in class DefaultPostOffice
protected void removeFromConditionMap(Binding binding)
removeFromConditionMap
in class DefaultPostOffice
protected void loadBindings(boolean nonClusteredOnly) throws java.lang.Exception
loadBindings
in class DefaultPostOffice
java.lang.Exception
protected Binding createBinding(int nodeId, Condition condition, java.lang.String queueName, long channelId, java.lang.String filterString, boolean durable, boolean isClustered) throws java.lang.Exception
createBinding
in class DefaultPostOffice
java.lang.Exception
protected Binding createBinding(int nodeID, Condition condition, java.lang.String queueName, long channelId, Filter filter, boolean durable, boolean isClustered)
createBinding
in class DefaultPostOffice
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |