diff --git a/activemq-core/src/main/java/org/apache/activemq/store/ReferenceStoreAdapter.java b/activemq-core/src/main/java/org/apache/activemq/store/ReferenceStoreAdapter.java index 74f2f0a598..370ea288e6 100644 --- a/activemq-core/src/main/java/org/apache/activemq/store/ReferenceStoreAdapter.java +++ b/activemq-core/src/main/java/org/apache/activemq/store/ReferenceStoreAdapter.java @@ -18,10 +18,13 @@ package org.apache.activemq.store; import java.io.IOException; +import java.util.Map; import java.util.Set; import org.apache.activemq.command.ActiveMQQueue; import org.apache.activemq.command.ActiveMQTopic; +import org.apache.activemq.command.TransactionId; +import org.apache.activemq.store.amq.AMQTx; /** * Adapter to the actual persistence mechanism used with ActiveMQ @@ -32,14 +35,24 @@ public interface ReferenceStoreAdapter extends PersistenceAdapter { /** * Factory method to create a new queue message store with the given destination name + * @param destination + * @return the QueueReferenceStore + * @throws IOException */ public ReferenceStore createQueueReferenceStore(ActiveMQQueue destination) throws IOException; /** * Factory method to create a new topic message store with the given destination name + * @param destination + * @return the TopicRefererenceStore + * @throws IOException */ public TopicReferenceStore createTopicReferenceStore(ActiveMQTopic destination) throws IOException; + /** + * @return Set of File ids in use + * @throws IOException + */ public Set getReferenceFileIdsInUse() throws IOException; /** @@ -60,5 +73,19 @@ public interface ReferenceStoreAdapter extends PersistenceAdapter { * */ public void recoverState() throws IOException; + + /** + * Save prepared transactions + * @param map + * @throws IOException + */ + public void savePreparedState(Map map)throws IOException; + + /** + * + * @return saved prepared transactions + * @throws IOException + */ + public Map retrievePreparedState() throws IOException; }