|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.jboss.mx.util.JBossNotificationBroadcasterSupport org.jboss.system.ServiceMBeanSupport org.jboss.mq.pm.jdbc3.PersistenceManager
This class manages all persistence related services for JDBC based persistence.
Field Summary |
Fields inherited from class org.jboss.system.ServiceMBeanSupport |
log, server, SERVICE_CONTROLLER_SIG, serviceName |
Fields inherited from interface org.jboss.system.ServiceMBean |
CREATE_EVENT, CREATED, DESTROY_EVENT, DESTROYED, FAILED, REGISTERED, START_EVENT, STARTED, STARTING, states, STOP_EVENT, STOPPED, STOPPING, UNREGISTERED |
Fields inherited from interface org.jboss.mq.pm.PersistenceManagerMBean |
OBJECT_NAME |
Constructor Summary | |
PersistenceManager()
Create a new persistence manager |
Method Summary | |
void |
add(MessageReference messageRef,
Tx txId)
Add a message to the persistent store. |
protected void |
addMessage(Connection c,
String queue,
SpyMessage message,
Tx txId,
String mark,
String lateClone)
Add a message |
void |
addMessage(SpyMessage message)
Persist the message |
protected void |
addReference(Connection c,
String queue,
MessageReference message,
Tx txId,
String mark)
Add a reference |
void |
closeQueue(JMSDestination jmsDest,
SpyDestination dest)
Close a queue |
void |
commitPersistentTx(Tx txId)
Commit the transaction to the persistent store. |
Tx |
createPersistentTx()
Create and return a unique transaction id. |
protected SpyMessage |
extractMessage(ResultSet rs,
int column)
Extract a message from a result |
protected Connection |
getConnection()
Gets a connection from the datasource, retrying as needed. |
javax.management.ObjectName |
getConnectionManager()
Retrieve the connection manager object name |
int |
getConnectionRetryAttempts()
Gets the ConnectionRetryAttempts. |
int |
getGCPeriodSecs()
Set the garbage collection period |
Object |
getInstance()
Get the persistence manager instance |
javax.management.ObjectName |
getMessageCache()
Unsupported operation |
MessageCache |
getMessageCacheInstance()
Unsupported operation |
String |
getSqlProperties()
Gets the sqlProperties. |
TxManager |
getTxManager()
Get a transaction manager. |
SpyMessage |
loadFromStorage(MessageReference messageRef)
Reads the message refered to by the MessagReference back as a SpyMessage |
void |
remove(MessageReference messageRef,
Tx txId)
Remove message from the persistent store. |
void |
removeFromStorage(MessageReference messageRef)
Removes the message that was stored in secondary storage. |
protected void |
removeMarkedMessages(Connection c,
Tx txid,
String mark)
Remove messages for a given transaction and mark |
protected void |
removeMarkedReferences(Connection c,
Tx txid,
String mark)
Remove references for a given transaction and mark |
protected void |
removeTXRecord(Connection c,
long txid)
Remove a transaction record |
protected void |
resolveAllUncommitedTXs()
Resolve uncommitted transactions |
void |
restoreQueue(JMSDestination jmsDest,
SpyDestination dest)
Restore a queue. |
void |
rollbackPersistentTx(Tx txId)
Rollback the transaction. |
void |
run()
|
void |
saveToStorage(MessageReference messageRef,
SpyMessage message)
Stores the given message to secondary storeage. |
protected void |
setBlob(PreparedStatement stmt,
int column,
SpyMessage message)
Store the message in a blob |
void |
setConnectionManager(javax.management.ObjectName connectionManagerName)
Set the connection manager object name |
void |
setConnectionRetryAttempts(int value)
Sets the ConnectionRetryAttempts. |
void |
setGCPeriodSecs(int gcPeriodSecs)
Set the garbage collection period in seconds |
void |
setMessageCache(javax.management.ObjectName messageCache)
Unsupported operation |
void |
setSqlProperties(String value)
Sets the sqlProperties. |
protected void |
startService()
|
protected void |
stopService()
|
void |
update(MessageReference messageRef,
Tx txId)
Update message in the persistent store. |
Methods inherited from class org.jboss.system.ServiceMBeanSupport |
create, createService, destroy, destroyService, getLog, getName, getNextNotificationSequenceNumber, getObjectName, getServer, getServiceName, getState, getStateString, jbossInternalCreate, jbossInternalDescription, jbossInternalDestroy, jbossInternalLifecycle, jbossInternalStart, jbossInternalStop, postDeregister, postRegister, preDeregister, preRegister, start, stop |
Methods inherited from class org.jboss.mx.util.JBossNotificationBroadcasterSupport |
addNotificationListener, getNotificationInfo, handleNotification, removeNotificationListener, 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.jboss.system.ServiceMBean |
getName, getState, getStateString, jbossInternalLifecycle |
Methods inherited from interface org.jboss.system.Service |
create, destroy, start, stop |
Constructor Detail |
public PersistenceManager() throws javax.jms.JMSException
javax.jms.JMSException
- for any errorMethod Detail |
public javax.management.ObjectName getConnectionManager()
getConnectionManager
in interface PersistenceManagerMBean
public void setConnectionManager(javax.management.ObjectName connectionManagerName)
setConnectionManager
in interface PersistenceManagerMBean
public int getGCPeriodSecs()
getGCPeriodSecs
in interface PersistenceManagerMBean
public void setGCPeriodSecs(int gcPeriodSecs)
setGCPeriodSecs
in interface PersistenceManagerMBean
public int getConnectionRetryAttempts()
getConnectionRetryAttempts
in interface PersistenceManagerMBean
public void setConnectionRetryAttempts(int value)
setConnectionRetryAttempts
in interface PersistenceManagerMBean
value
- the number of retry attemptspublic String getSqlProperties()
getSqlProperties
in interface PersistenceManagerMBean
public void setSqlProperties(String value)
setSqlProperties
in interface PersistenceManagerMBean
public Tx createPersistentTx() throws javax.jms.JMSException
PersistenceManager
createPersistentTx
in interface PersistenceManager
javax.jms.JMSException
- for any errorpublic void commitPersistentTx(Tx txId) throws javax.jms.JMSException
PersistenceManager
commitPersistentTx
in interface PersistenceManager
txId
- Description of Parameter
javax.jms.JMSException
- for any errorpublic void rollbackPersistentTx(Tx txId) throws javax.jms.JMSException
PersistenceManager
rollbackPersistentTx
in interface PersistenceManager
txId
- Description of Parameter
javax.jms.JMSException
- for any errorpublic void add(MessageReference messageRef, Tx txId) throws javax.jms.JMSException
PersistenceManager
add
in interface PersistenceManager
messageRef
- the messagetxId
- the transaction
javax.jms.JMSException
- for any errorpublic void update(MessageReference messageRef, Tx txId) throws javax.jms.JMSException
PersistenceManager
update
in interface PersistenceManager
messageRef
- txId
- Description of Parameter
javax.jms.JMSException
- for any errorpublic void remove(MessageReference messageRef, Tx txId) throws javax.jms.JMSException
PersistenceManager
remove
in interface PersistenceManager
messageRef
- the messagetxId
- the transaction
javax.jms.JMSException
- for any errorpublic void restoreQueue(JMSDestination jmsDest, SpyDestination dest) throws javax.jms.JMSException
PersistenceManager
restoreQueue
in interface PersistenceManager
jmsDest
- the jms destinationdest
- the client destination
javax.jms.JMSException
- for any errorpublic TxManager getTxManager()
PersistenceManager
getTxManager
in interface PersistenceManager
public void closeQueue(JMSDestination jmsDest, SpyDestination dest) throws javax.jms.JMSException
PersistenceManager
closeQueue
in interface PersistenceManager
jmsDest
- the jms destinationdest
- the client destination
javax.jms.JMSException
- for any errorpublic MessageCache getMessageCacheInstance()
getMessageCacheInstance
in interface PersistenceManager
public void addMessage(SpyMessage message) throws javax.jms.JMSException
NewPersistenceManager
addMessage
in interface NewPersistenceManager
message
- the message to persist
javax.jms.JMSException
- for any errorpublic Object getInstance()
PersistenceManagerMBean
getInstance
in interface PersistenceManagerMBean
public javax.management.ObjectName getMessageCache()
getMessageCache
in interface PersistenceManagerMBean
public void setMessageCache(javax.management.ObjectName messageCache)
setMessageCache
in interface PersistenceManagerMBean
messageCache
- the object namepublic SpyMessage loadFromStorage(MessageReference messageRef) throws javax.jms.JMSException
CacheStore
loadFromStorage
in interface CacheStore
messageRef
- the message reference
javax.jms.JMSException
- for any errorpublic void removeFromStorage(MessageReference messageRef) throws javax.jms.JMSException
CacheStore
removeFromStorage
in interface CacheStore
messageRef
- the message reference
javax.jms.JMSException
- for any errorpublic void saveToStorage(MessageReference messageRef, SpyMessage message) throws javax.jms.JMSException
CacheStore
saveToStorage
in interface CacheStore
messageRef
- the message referencemessage
- the message
javax.jms.JMSException
- for any errorpublic void run()
protected void startService() throws Exception
Exception
protected void stopService() throws Exception
Exception
protected void resolveAllUncommitedTXs() throws javax.jms.JMSException
javax.jms.JMSException
- for any errorprotected void removeTXRecord(Connection c, long txid) throws SQLException
c
- the connectiontxid
- the transaction
SQLException
- for any errorprotected void addMessage(Connection c, String queue, SpyMessage message, Tx txId, String mark, String lateClone) throws SQLException, IOException
c
- the connectionqueue
- the queue namemessage
- the messagemark
- the mark to set for the message
SQLException
- for an error in the db
IOException
- for an error serializing the messageprotected void addReference(Connection c, String queue, MessageReference message, Tx txId, String mark) throws SQLException, IOException
c
- the connectionqueue
- the queue namemessage
- the referencemark
- the mark to set for the message
SQLException
- for an error in the db
IOException
- for an error serializing the messageprotected void removeMarkedMessages(Connection c, Tx txid, String mark) throws SQLException
c
- the connectiontxid
- the transaction idmark
- the mark
SQLException
- for any errorprotected void removeMarkedReferences(Connection c, Tx txid, String mark) throws SQLException
c
- the connectiontxid
- the transaction idmark
- the mark
SQLException
- for any errorprotected void setBlob(PreparedStatement stmt, int column, SpyMessage message) throws IOException, SQLException
stmt
- the prepared statementcolumn
- the column in the prepared statementmessage
- the message
IOException
SQLException
protected SpyMessage extractMessage(ResultSet rs, int column) throws SQLException, IOException
rs
- the result setcolumn
- the column number
SQLException
- for an error accessing the db
IOException
- for an error extracting the messageprotected Connection getConnection() throws SQLException
SQLException
- if an error occurs.
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |