1 /* 2 * Copyright (c) MuleSoft, Inc. All rights reserved. http://www.mulesoft.com 3 * The software in this package is published under the terms of the CPAL v1.0 4 * license, a copy of which has been included with this distribution in the 5 * LICENSE.txt file. 6 */ 7 package org.mule.api.transaction; 8 9 import org.mule.api.config.MuleConfiguration; 10 11 import javax.transaction.TransactionManager; 12 13 /** 14 * <code>TranactionManagerFactory</code> is a factory class for creating a 15 * transaction manager for the MuleServer. 16 * 17 */ 18 public interface TransactionManagerFactory 19 { 20 /** 21 * Creates of obtains the jta transaction manager to use for mule transactions 22 * 23 * @return the transaction manager to use 24 * @throws Exception if the transaction manager cannot be located or created 25 * @param config Mule configuration parameters 26 */ 27 TransactionManager create(MuleConfiguration config) throws Exception; 28 }