Class BlobJDBCAdapter
java.lang.Object
org.apache.activemq.store.jdbc.adapter.DefaultJDBCAdapter
org.apache.activemq.store.jdbc.adapter.BlobJDBCAdapter
- All Implemented Interfaces:
JDBCAdapter
- Direct Known Subclasses:
InformixJDBCAdapter,OracleBlobJDBCAdapter
This JDBCAdapter inserts and extracts BLOB data using the getBlob()/setBlob()
operations. This is a little more involved since to insert a blob you have
to:
1: insert empty blob. 2: select the blob 3: finally update the blob with data
value.
The databases/JDBC drivers that use this adapter are:
-
Field Summary
Fields inherited from class org.apache.activemq.store.jdbc.adapter.DefaultJDBCAdapter
batchStatments, MAX_ROWS, maxRows, prioritizedMessages, statements -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoiddoAddMessage(TransactionContext c, long sequence, org.apache.activemq.command.MessageId messageID, org.apache.activemq.command.ActiveMQDestination destination, byte[] data, long expiration, byte priority, org.apache.activemq.command.XATransactionId xid) A non null xid indicated the op is part of 2pc prepare, so ops are flagged pending outcomebyte[]doGetMessage(TransactionContext c, org.apache.activemq.command.MessageId id) voidsetStatements(Statements statements) Methods inherited from class org.apache.activemq.store.jdbc.adapter.DefaultJDBCAdapter
close, close, doAddMessageReference, doClearLastAck, doCommitAddOp, doCreateTables, doDeleteOldMessages, doDeleteSubscription, doDropTables, doGetAllSubscriptions, doGetDestinations, doGetDurableSubscriberMessageCount, doGetLastAckedDurableSubscriberMessageId, doGetLastMessageStoreSequenceId, doGetLastProducerSequenceId, doGetMessageById, doGetMessageCount, doGetMessageReference, doGetSubscriberEntry, doMessageIdScan, doRecordDestination, doRecover, doRecoverNextMessages, doRecoverNextMessages, doRecoverNextMessagesWithPriority, doRecoverPreparedOps, doRecoverSubscription, doRemoveAllMessages, doRemoveMessage, doSetLastAck, doSetLastAckWithPriority, doSetSubscriberEntry, doUpdateMessage, dumpTables, dumpTables, getBinaryData, getMaxRows, getStatements, getStoreSequenceId, isBatchStatements, isBatchStatments, limitQuery, printQuery, printQuery, setBatchStatements, setBatchStatments, setBinaryData, setMaxRows, setUseExternalMessageReferences
-
Constructor Details
-
BlobJDBCAdapter
public BlobJDBCAdapter()
-
-
Method Details
-
setStatements
- Specified by:
setStatementsin interfaceJDBCAdapter- Overrides:
setStatementsin classDefaultJDBCAdapter
-
doAddMessage
public void doAddMessage(TransactionContext c, long sequence, org.apache.activemq.command.MessageId messageID, org.apache.activemq.command.ActiveMQDestination destination, byte[] data, long expiration, byte priority, org.apache.activemq.command.XATransactionId xid) throws SQLException, IOException Description copied from class:DefaultJDBCAdapterA non null xid indicated the op is part of 2pc prepare, so ops are flagged pending outcome- Specified by:
doAddMessagein interfaceJDBCAdapter- Overrides:
doAddMessagein classDefaultJDBCAdapter- Throws:
SQLExceptionIOException
-
doGetMessage
public byte[] doGetMessage(TransactionContext c, org.apache.activemq.command.MessageId id) throws SQLException, IOException - Specified by:
doGetMessagein interfaceJDBCAdapter- Overrides:
doGetMessagein classDefaultJDBCAdapter- Throws:
SQLExceptionIOException
-