/** * Dragon - SOA Governance Platform. * Copyright (c) 2008 EBM Websourcing, http://www.ebmwebsourcing.com/ * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * * ------------------------------------------------------------------------- * CommonWSConfig.java * ------------------------------------------------------------------------- */ package org.ow2.dragon.service; import java.io.File; import javax.annotation.Resource; import junit.framework.Assert; import org.apache.commons.io.FileUtils; import org.apache.log4j.Logger; import org.hibernate.Session; import org.hibernate.SessionFactory; import org.junit.BeforeClass; import org.ow2.dragon.api.service.metadata.MetadataService; import org.springframework.orm.hibernate3.SessionFactoryUtils; import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.transaction.AfterTransaction; import org.springframework.transaction.annotation.Transactional; /** * @author ofabre - eBM Websourcing * */ @ContextConfiguration(locations = { "classpath:applicationContext-dao.xml", "classpath:applicationContext-transaction.xml", "classpath:applicationContext-aop.xml", "classpath:applicationContext-test-ws.xml", "classpath:applicationContext-test-cxf.xml", "classpath:applicationContext-test-hibernate.xml", "classpath:applicationContext-test-jdbc.xml", "classpath:applicationContext-services.xml", "classpath:applicationContext-test-repository.xml", "classpath:applicationContext-test-compass.xml" /* "classpath:applicationContext-uddi-services.xml" */}) @Transactional public class CommonWSConfig extends Assert { public static final String TRANSFORMER_FACTORY = "com.sun.org.apache.xalan.internal.xsltc.trax.TransformerFactoryImpl"; private Logger logger = Logger.getLogger(this.getClass()); @Resource private MetadataService metadataService; @Resource private SessionFactory sessionFactory; public Session getHibernateSession() { return SessionFactoryUtils.getSession(sessionFactory, false); } @BeforeClass public static void beforeClass() { System.setProperty("javax.xml.transform.TransformerFactory", TRANSFORMER_FACTORY); } public SessionFactory getSessionFactory() { return sessionFactory; } @AfterTransaction public void after() { logger.info("############## Delete repository directory if repo type is filesystem"); String repoRoot = metadataService.getRepositoryRootPath(); if (repoRoot != null) { File repoRootDir = new File(repoRoot); FileUtils.deleteQuietly(repoRootDir); } } }