SearchException.java
01 /*
02  *  SearchException.java
03  *
04  *  Copyright (c) 1995-2012, The University of Sheffield. See the file
05  *  COPYRIGHT.txt in the software or at http://gate.ac.uk/gate/COPYRIGHT.txt
06  *
07  *  This file is part of GATE (see http://gate.ac.uk/), and is free
08  *  software, licenced under the GNU Library General Public License,
09  *  Version 2, June 1991 (in the distribution as file licence.html,
10  *  and also available at http://gate.ac.uk/gate/licence.html).
11  *
12  *  Rosen Marinov, 19/Apr/2002
13  *
14  */
15 
16 package gate.creole.ir;
17 
18 public class SearchException extends Exception{
19 
20   private static final long serialVersionUID = 238378794456612672L;
21 
22   public SearchException(String msg){
23     super(msg);
24   }
25 
26   public SearchException(String errorType, String error,
27           String erroneousLine) {
28 
29     super("\nError: "+errorType+" - "+error+".\n"
30           +erroneousLine);
31   }
32 
33   public SearchException(String errorType, String error,
34           String erroneousLine, int errorPosition) {
35 
36     super("\nError: "+errorType+" - "+error+".\n"
37             +erroneousLine+"\n"
38             +caretLine(errorPosition));
39   }
40 
41   final static private String caretLine(int errorPosition) {
42     StringBuffer s = new StringBuffer();
43     for (int c = 0; c < errorPosition; c++) {
44       s.append(" ");
45     }
46     s.append("^");
47     return s.toString();
48   }
49 
50 }