Package org.fto.jthink.jdbc

Source Code of org.fto.jthink.jdbc.ResourceManagerInitialization

package org.fto.jthink.jdbc;

import java.io.IOException;

import org.fto.jthink.config.Configuration;
import org.fto.jthink.log.LogManager;
import org.fto.jthink.resource.ResourceManager;
import org.fto.jthink.transaction.DefaultTransactionManager;
import org.fto.jthink.transaction.TransactionFactory;
import org.fto.jthink.transaction.TransactionManager;
import org.fto.jthink.util.PackageResourceReader;
import org.fto.jthink.util.XMLHelper;

public class ResourceManagerInitialization {
  public ResourceManager initResourceManager() throws Exception{
    /* 初始化配置文件 */
    Configuration config =
      new Configuration(
          XMLHelper.load(
               new PackageResourceReader(this.getClass()).getResource("/fto-jthink.xml").openStream()));
 
    /* 初始化日志管理器 */
    LogManager.configure(config);
//    /* 返回日志处理接口 */
//    logger = LogManager.getLogger(SQLTestCase.class);
   
    /* 初始化资源管理器 */
    ResourceManager resManager = new ResourceManager();
    /* 将配置文件加入到资源管理器中 */
    resManager.setResource(Configuration.class.getName(), config);
   
    /* 初始化事务管理器 */
    TransactionManager transactionManager = new DefaultTransactionManager(resManager, config);
    /* 将事务管理器加入到资源管理器中 */
    resManager.setResource(TransactionManager.class.getName(), transactionManager);
   
    /* 返回在fto-jthink.xml中配置的JDBC事务 */
    TransactionFactory transactionFactory = transactionManager.getTransactionFactory("SampleTransaction");
    JDBCTransaction transaction  = (JDBCTransaction)transactionFactory.create();
    /* 将此事务处理对象加入到事务管理器中 */
    transactionManager.addTransaction(JDBCTransaction.class.getName(), transaction);
    resManager.setResource(JDBCTransaction.class.getName(), transaction);
   
    return resManager;
  }
}
TOP

Related Classes of org.fto.jthink.jdbc.ResourceManagerInitialization

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.