/*ALMA - Atacama Large Millimiter Array * (c) Associated Universities Inc., 2004 * *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 */ /** * @author dfugate * @version $Id: ErrTestComponentImpl.java,v 1.3 2007/04/13 02:51:27 sharring Exp $ * @since */ /** * Insert a Class/Interface comment. * */ package alma.perftest.ErrTestComponentImpl; import alma.perftest.BasePerfCompImpl.BasePerfCompImpl; import alma.perftest.ErrTestComponentOperations; import alma.BenchmarkErrType.BenchmarkErr0Ex; import alma.BenchmarkErrType.wrappers.AcsJBenchmarkErr0Ex; /** * * @author dfugate */ public class ErrTestComponentImpl extends BasePerfCompImpl implements ErrTestComponentOperations { public AcsJBenchmarkErr0Ex getException(int depth, AcsJBenchmarkErr0Ex prevExcept) { if (depth==0) { return prevExcept; } else { return getException(depth-1, new AcsJBenchmarkErr0Ex(prevExcept)); } } public void testExceptions(int depth, boolean isError) throws BenchmarkErr0Ex { //sanity check if (depth < 0) { AcsJBenchmarkErr0Ex myExcept = new AcsJBenchmarkErr0Ex(); throw myExcept.toBenchmarkErr0Ex(); } BenchmarkErr0Ex except = getException(depth, new AcsJBenchmarkErr0Ex()).toBenchmarkErr0Ex(); if(isError) { throw except; } } }