public synchronized TopicMessageStore createTopicMessageStore(ActiveMQTopic destination)
throws IOException {
TopicMessageStore rc = topics.get(destination);
if (rc == null) {
Store store = getStore();
MapContainer messageContainer = getMapContainer(destination, "topic-data");
MapContainer subsContainer = getSubsMapContainer(destination.toString() + "-Subscriptions",
"topic-subs");
ListContainer<TopicSubAck> ackContainer = store.getListContainer(destination.toString(),
"topic-acks");
ackContainer.setMarshaller(new TopicSubAckMarshaller());
rc = new KahaTopicMessageStore(store, messageContainer, ackContainer, subsContainer, destination);
messageStores.put(destination, rc);
if (transactionStore != null) {