Coverage Report - org.apache.maven.doxia.parser.ParseException
 
Classes in this File Line Coverage Branch Coverage Complexity
ParseException
0%
0/24
0%
0/4
1,167
 
 1  
 package org.apache.maven.doxia.parser;
 2  
 
 3  
 /*
 4  
  * Licensed to the Apache Software Foundation (ASF) under one
 5  
  * or more contributor license agreements.  See the NOTICE file
 6  
  * distributed with this work for additional information
 7  
  * regarding copyright ownership.  The ASF licenses this file
 8  
  * to you under the Apache License, Version 2.0 (the
 9  
  * "License"); you may not use this file except in compliance
 10  
  * with the License.  You may obtain a copy of the License at
 11  
  *
 12  
  *   http://www.apache.org/licenses/LICENSE-2.0
 13  
  *
 14  
  * Unless required by applicable law or agreed to in writing,
 15  
  * software distributed under the License is distributed on an
 16  
  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
 17  
  * KIND, either express or implied.  See the License for the
 18  
  * specific language governing permissions and limitations
 19  
  * under the License.
 20  
  */
 21  
 
 22  
 /**
 23  
  * Encapsulate a Doxia parse error.
 24  
  *
 25  
  * @author <a href="mailto:jason@maven.org">Jason van Zyl</a>
 26  
  * @version $Id: ParseException.java 747780 2009-02-25 13:55:23Z vsiveton $
 27  
  * @since 1.0
 28  
  */
 29  
 public class ParseException
 30  
     extends Exception
 31  
 {
 32  
     /** serialVersionUID */
 33  
     static final long serialVersionUID = 295967936746221567L;
 34  
 
 35  
     /** The file that caused the ParseException. */
 36  
     private String fileName;
 37  
 
 38  
     /** Line number where the parse exception occurred. */
 39  
     private int lineNumber;
 40  
 
 41  
     /** Column number where the parse exception occurred. */
 42  
     private int columnNumber;
 43  
 
 44  
     /**
 45  
      * Construct a new <code>ParseException</code> with the specified detail message.
 46  
      * <br/>
 47  
      * <b>Note</b>: no line or column number will be used.
 48  
      *
 49  
      * @param message The detailed message.
 50  
      * This can later be retrieved by the <code>Throwable.getMessage()</code> method.
 51  
      */
 52  
     public ParseException( String message )
 53  
     {
 54  0
         this( null, message, null, -1, -1 );
 55  0
     }
 56  
 
 57  
     /**
 58  
      * Construct a new <code>ParseException</code> with the specified detail message and cause.
 59  
      * <br/>
 60  
      * <b>Note</b>: no line or column number will be used.
 61  
      *
 62  
      * @param message The detailed message.
 63  
      * This can later be retrieved by the <code>Throwable.getMessage()</code> method.
 64  
      * @param e the cause. This can be retrieved later by the <code>Throwable.getCause()</code> method.
 65  
      * (A null value is permitted, and indicates that the cause is nonexistent or unknown.)
 66  
      */
 67  
     public ParseException( String message, Exception e )
 68  
     {
 69  0
         this( e, message, null, -1, -1 );
 70  0
     }
 71  
 
 72  
     /**
 73  
      * Construct a new <code>ParseException</code> with the specified detail message,
 74  
      * line number and column number.
 75  
      *
 76  
      * @param message The detailed message.
 77  
      * This can later be retrieved by the <code>Throwable.getMessage()</code> method.
 78  
      * @param line The line number where the parsing failed.
 79  
      * This can later be retrieved by the getLineNumber() method.
 80  
      * @param column The column number where the parsing failed.
 81  
      * This can later be retrieved by the getColumnNumber() method.
 82  
      * @since 1.1
 83  
      */
 84  
     public ParseException( String message, int line, int column )
 85  
     {
 86  0
         this( null, message, null, line, column );
 87  0
     }
 88  
 
 89  
     /**
 90  
      * Construct a new <code>ParseException</code> with the specified detail message and cause,
 91  
      * line number and column number.
 92  
      *
 93  
      * @param message The detailed message.
 94  
      * This can later be retrieved by the <code>Throwable.getMessage()</code> method.
 95  
      * @param e the cause. This can be retrieved later by the <code>Throwable.getCause()</code> method.
 96  
      * (A null value is permitted, and indicates that the cause is nonexistent or unknown.)
 97  
      * @param line The line number where the parsing failed.
 98  
      * This can later be retrieved by the getLineNumber() method.
 99  
      * @param column The column number where the parsing failed.
 100  
      * This can later be retrieved by the getColumnNumber() method.
 101  
      * @since 1.1
 102  
      */
 103  
     public ParseException( String message, Exception e, int line, int column )
 104  
     {
 105  0
         this( e, message, null, line, column );
 106  0
     }
 107  
 
 108  
     /**
 109  
      * Constructs a new exception with the specified cause. The error message is
 110  
      *  (cause == null ? null : cause.toString() ).
 111  
      *
 112  
      * @param e the cause. This can be retrieved later by the <code>Throwable.getCause()</code> method.
 113  
      * (A null value is permitted, and indicates that the cause is nonexistent or unknown.)
 114  
      * @deprecated Using {@link #ParseException(Exception, int, int)} to specify the line and column number.
 115  
      */
 116  
     public ParseException( Exception e )
 117  
     {
 118  0
         this( e, null, null, -1, -1 );
 119  0
     }
 120  
 
 121  
     /**
 122  
      * Constructs a new exception with the specified cause, line number and column number. The error message is
 123  
      *  (cause == null ? null : cause.toString() ).
 124  
      *
 125  
      * @param e the cause. This can be retrieved later by the <code>Throwable.getCause()</code> method.
 126  
      * (A null value is permitted, and indicates that the cause is nonexistent or unknown.)
 127  
      * @param line The line number where the parsing failed.
 128  
      * This can later be retrieved by the getLineNumber() method.
 129  
      * @param column The column number where the parsing failed.
 130  
      * This can later be retrieved by the getColumnNumber() method.
 131  
      * @since 1.1
 132  
      */
 133  
     public ParseException( Exception e, int line, int column )
 134  
     {
 135  0
         this( e, null, null, line, column );
 136  0
     }
 137  
 
 138  
     /**
 139  
      * Construct a new <code>ParseException</code> with the specified cause,
 140  
      * filename and linenumber.
 141  
      *
 142  
      * @param e the cause. This can be retrieved later by the <code>Throwable.getCause()</code> method.
 143  
      * (A null value is permitted, and indicates that the cause is nonexistent or unknown.)
 144  
      * @param file Name of a file that couldn't be parsed.
 145  
      * This can later be retrieved by the getFileName() method.
 146  
      * @param line The line number where the parsing failed.
 147  
      * This can later be retrieved by the getLineNumber() method.
 148  
      * @deprecated Using {@link #ParseException(Exception, String, int, int)} to specify the column number.
 149  
      */
 150  
     public ParseException( Exception e, String file, int line )
 151  
     {
 152  0
         this( e, null, file, line, -1 );
 153  0
     }
 154  
 
 155  
     /**
 156  
      * Construct a new <code>ParseException</code> with the specified cause,
 157  
      * filename, line number and column number.
 158  
      *
 159  
      * @param e the cause. This can be retrieved later by the <code>Throwable.getCause()</code> method.
 160  
      * (A null value is permitted, and indicates that the cause is nonexistent or unknown.)
 161  
      * @param file Name of a file that couldn't be parsed.
 162  
      * This can later be retrieved by the getFileName() method.
 163  
      * @param line The line number where the parsing failed.
 164  
      * This can later be retrieved by the getLineNumber() method.
 165  
      * @param column The column number where the parsing failed.
 166  
      * This can later be retrieved by the getColumnNumber() method.
 167  
      */
 168  
     public ParseException( Exception e, String file, int line, int column )
 169  
     {
 170  0
         this( e, null, file, line, column );
 171  0
     }
 172  
 
 173  
     /**
 174  
      * Construct a new <code>ParseException</code> with the specified cause, detail message,
 175  
      * filename, line number and column number.
 176  
      *
 177  
      * @param e the cause. This can be retrieved later by the <code>Throwable.getCause()</code> method.
 178  
      * (A null value is permitted, and indicates that the cause is nonexistent or unknown.)
 179  
      * @param message The detailed message.
 180  
      * This can later be retrieved by the <code>Throwable.getMessage()</code> method.
 181  
      * @param file Name of a file that couldn't be parsed.
 182  
      * This can later be retrieved by the getFileName() method.
 183  
      * @param line The line number where the parsing failed.
 184  
      * This can later be retrieved by the getLineNumber() method.
 185  
      * @param column The column number where the parsing failed.
 186  
      * This can later be retrieved by the getColumnNumber() method.
 187  
      * @since 1.1
 188  
      */
 189  
     public ParseException( Exception e, String message, String file, int line, int column )
 190  
     {
 191  0
         super( ( message == null ) ? ( ( e == null ) ? null : e.getMessage() ) : message, e );
 192  
 
 193  0
         this.fileName = file;
 194  0
         this.lineNumber = line;
 195  0
         this.columnNumber = column;
 196  0
     }
 197  
 
 198  
     /**
 199  
      * <p>Getter for the field <code>fileName</code>.</p>
 200  
      *
 201  
      * @return the file name that caused the <code>ParseException</code>.
 202  
      */
 203  
     public String getFileName()
 204  
     {
 205  0
         return fileName;
 206  
     }
 207  
 
 208  
     /**
 209  
      * <p>Getter for the field <code>lineNumber</code>.</p>
 210  
      *
 211  
      * @return the line number where the <code>ParseException</code> occurred.
 212  
      */
 213  
     public int getLineNumber()
 214  
     {
 215  0
         return lineNumber;
 216  
     }
 217  
 
 218  
     /**
 219  
      * <p>Getter for the field <code>columnNumber</code>.</p>
 220  
      *
 221  
      * @return the column number where the <code>ParseException</code> occurred.
 222  
      * @since 1.1
 223  
      */
 224  
     public int getColumnNumber()
 225  
     {
 226  0
         return columnNumber;
 227  
     }
 228  
 }