1 /* 2 * Hibernate, Relational Persistence for Idiomatic Java 3 * 4 * Copyright (c) 2008, Red Hat Middleware LLC or third-party contributors as 5 * indicated by the @author tags or express copyright attribution 6 * statements applied by the authors. All third-party contributions are 7 * distributed under license by Red Hat Middleware LLC. 8 * 9 * This copyrighted material is made available to anyone wishing to use, modify, 10 * copy, or redistribute it subject to the terms and conditions of the GNU 11 * Lesser General Public License, as published by the Free Software Foundation. 12 * 13 * This program is distributed in the hope that it will be useful, 14 * but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY 15 * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License 16 * for more details. 17 * 18 * You should have received a copy of the GNU Lesser General Public License 19 * along with this distribution; if not, write to: 20 * Free Software Foundation, Inc. 21 * 51 Franklin Street, Fifth Floor 22 * Boston, MA 02110-1301 USA 23 * 24 */ 25 package org.hibernate.engine.transaction; 26 27 import org.hibernate.HibernateException; 28 29 import java.sql.Connection; 30 31 /** 32 * Represents work that needs to be performed in a manner 33 * which isolates it from any current application unit of 34 * work transaction. 35 * 36 * @author Steve Ebersole 37 */ 38 public interface IsolatedWork { 39 /** 40 * Perform the actual work to be done. 41 * 42 * @param connection The JDBC connection to use. 43 * @throws HibernateException 44 */ 45 public void doWork(Connection connection) throws HibernateException; 46 }