1 /** 2 * EasyBeans 3 * Copyright (C) 2006 Bull S.A.S. 4 * Contact: easybeans@objectweb.org 5 * 6 * This library is free software; you can redistribute it and/or 7 * modify it under the terms of the GNU Lesser General Public 8 * License as published by the Free Software Foundation; either 9 * version 2.1 of the License, or any later version. 10 * 11 * This library is distributed in the hope that it will be useful, 12 * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 14 * Lesser General Public License for more details. 15 * 16 * You should have received a copy of the GNU Lesser General Public 17 * License along with this library; if not, write to the Free Software 18 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 19 * USA 20 * 21 * -------------------------------------------------------------------------- 22 * $Id: RuntimeExceptionInterceptor.java 450 2006-05-12 15:30:25Z benoitf $ 23 * -------------------------------------------------------------------------- 24 */ 25 package org.objectweb.easybeans.tests.common.interceptors.business; 26 27 import java.sql.SQLException; 28 29 import javax.interceptor.AroundInvoke; 30 import javax.interceptor.InvocationContext; 31 32 import org.objectweb.easybeans.tests.common.exception.TransactionRuntimeException; 33 34 /** 35 * Used to change the SQLException to a runtime exception. 36 * @author Gisele Pinheiro Souza 37 * @author Eduardo Studzinski Estima de Castro 38 * 39 */ 40 public class RuntimeExceptionInterceptor { 41 42 /** 43 * Changes the SQLException to a runtime exception. 44 * @param invocationContext contains attributes of invocation 45 * @return the method's intercepted result. 46 * @throws Exception if an error occurs. 47 */ 48 @AroundInvoke 49 public Object changeMethodException(final InvocationContext invocationContext) throws Exception{ 50 Object objReturnedValue = null; 51 try { 52 objReturnedValue = invocationContext.proceed(); 53 } catch(SQLException e){ 54 throw new TransactionRuntimeException(e); 55 } 56 return objReturnedValue; 57 } 58 } 59