Clover coverage report - gsbase - 2.0.1
Coverage timestamp: Sat Jan 1 2005 12:30:02 EST
file stats: LOC: 127   Methods: 6
NCLOC: 38   Classes: 1
 
 Source file Conditionals Statements Methods TOTAL
ResourceException.java 33.3% 43.8% 50% 42.9%
coverage coverage
 1    /*
 2    * Copyright (c) 1998, 2005 Gargoyle Software Inc. All rights reserved.
 3    *
 4    * Redistribution and use in source and binary forms, with or without
 5    * modification, are permitted provided that the following conditions are met:
 6    *
 7    * 1. Redistributions of source code must retain the above copyright notice,
 8    * this list of conditions and the following disclaimer.
 9    * 2. Redistributions in binary form must reproduce the above copyright notice,
 10    * this list of conditions and the following disclaimer in the documentation
 11    * and/or other materials provided with the distribution.
 12    * 3. The end-user documentation included with the redistribution, if any, must
 13    * include the following acknowledgment:
 14    *
 15    * "This product includes software developed by Gargoyle Software Inc.
 16    * (http://www.GargoyleSoftware.com/)."
 17    *
 18    * Alternately, this acknowledgment may appear in the software itself, if
 19    * and wherever such third-party acknowledgments normally appear.
 20    * 4. The name "Gargoyle Software" must not be used to endorse or promote
 21    * products derived from this software without prior written permission.
 22    * For written permission, please contact info@GargoyleSoftware.com.
 23    * 5. Products derived from this software may not be called "GSBase", nor may
 24    * "GSBase" appear in their name, without prior written permission of
 25    * Gargoyle Software Inc.
 26    *
 27    * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES,
 28    * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
 29    * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL GARGOYLE
 30    * SOFTWARE INC. OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
 31    * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
 32    * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
 33    * OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
 34    * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
 35    * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
 36    * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 37    */
 38    package com.gargoylesoftware.base.resource;
 39   
 40    import java.io.PrintStream;
 41    import java.io.PrintWriter;
 42   
 43    /**
 44    * An exception that is thrown by ResourceManager
 45    *
 46    * @version $Revision: 1.5 $
 47    * @author <a href="mailto:mbowler@GargoyleSoftware.com">Mike Bowler</a>
 48    */
 49    public class ResourceException extends RuntimeException {
 50   
 51    private static final long serialVersionUID = 599093006370872479L;
 52    private final Throwable enclosedException_;
 53   
 54   
 55    /**
 56    * Create an instance
 57    *
 58    * @param message The error message
 59    */
 60  4 public ResourceException( final String message ) {
 61  4 super( message );
 62  4 if( message == null ) {
 63  1 throw new NullPointerException();
 64    }
 65  3 enclosedException_ = null;
 66    }
 67   
 68   
 69    /**
 70    * Create an instance
 71    *
 72    * @param throwable the error that caused this exception
 73    */
 74  2 public ResourceException( final Throwable throwable ) {
 75  2 super( throwable.getMessage() );
 76  2 enclosedException_ = throwable;
 77    }
 78   
 79   
 80    /**
 81    * Create an instance
 82    */
 83  0 protected ResourceException() {
 84  0 enclosedException_ = null;
 85    }
 86   
 87   
 88    /**
 89    * Return the enclosed exception
 90    *
 91    * @return The enclosed exception
 92    */
 93  2 public Throwable getEnclosedException() {
 94  2 return enclosedException_;
 95    }
 96   
 97   
 98    /**
 99    * Print the stack trace. If this exception contains another exception then
 100    * the stack traces for both will be printed.
 101    *
 102    * @param writer Where the stack trace will be written
 103    */
 104  0 public void printStackTrace( final PrintWriter writer ) {
 105  0 super.printStackTrace( writer );
 106  0 if( enclosedException_ != null ) {
 107  0 writer.write( "Enclosed exception: " );
 108  0 enclosedException_.printStackTrace( writer );
 109    }
 110    }
 111   
 112   
 113    /**
 114    * Print the stack trace. If this exception contains another exception then
 115    * the stack traces for both will be printed.
 116    *
 117    * @param stream Where the stack trace will be written
 118    */
 119  0 public void printStackTrace( final PrintStream stream ) {
 120  0 super.printStackTrace( stream );
 121  0 if( enclosedException_ != null ) {
 122  0 stream.print( "Enclosed exception: " );
 123  0 enclosedException_.printStackTrace( stream );
 124    }
 125    }
 126    }
 127