1 /* 2 * $Id: QueueManager.java 7976 2007-08-21 14:26:13Z dirk.olmes $ 3 * -------------------------------------------------------------------------------------- 4 * Copyright (c) MuleSource, Inc. All rights reserved. http://www.mulesource.com 5 * 6 * The software in this package is published under the terms of the CPAL v1.0 7 * license, a copy of which has been included with this distribution in the 8 * LICENSE.txt file. 9 */ 10 11 package org.mule.util.queue; 12 13 import org.mule.util.xa.ResourceManagerSystemException; 14 15 /** 16 * A Queue manager is responsible for manageing one or more Queue resources and 17 * providing common support fot transactions and persistence 18 * 19 * @author <a href="mailto:gnt@codehaus.org">Guillaume Nodet</a> 20 * @author <a href="mailto:ross.mason@symphonysoft.com">Ross Mason</a> 21 * @version $Revision: 7976 $ 22 */ 23 public interface QueueManager 24 { 25 26 void start() throws ResourceManagerSystemException; 27 28 void stop() throws ResourceManagerSystemException; 29 30 QueueSession getQueueSession(); 31 32 void close(); 33 34 void setDefaultQueueConfiguration(QueueConfiguration config); 35 36 void setQueueConfiguration(String queueName, QueueConfiguration config); 37 38 /** 39 * @return Returns the persistenceStrategy. 40 */ 41 QueuePersistenceStrategy getPersistenceStrategy(); 42 43 /** 44 * @param persistenceStrategy The persistenceStrategy to set. 45 */ 46 void setPersistenceStrategy(QueuePersistenceStrategy persistenceStrategy); 47 48 QueuePersistenceStrategy getMemoryPersistenceStrategy(); 49 50 void setMemoryPersistenceStrategy(QueuePersistenceStrategy memoryPersistenceStrategy); 51 52 }