Revision 44098 trunk/org.gvsig.desktop/org.gvsig.desktop.library/org.gvsig.expressionevaluator/org.gvsig.expressionevaluator.lib/org.gvsig.expressionevaluator.lib.api/src/main/java/org/gvsig/expressionevaluator/ExpressionSyntaxException.java

View differences:

ExpressionSyntaxException.java
6 6
 */
7 7
public class ExpressionSyntaxException extends RuntimeException {
8 8

  
9
    private int position;
10
    private String phrase;
9
    private final int position;
10
    private final String phrase;
11
    private final String description;
11 12
    
12 13
    public ExpressionSyntaxException() {
13 14
        super("Syntax error in expression.");
15
        this.phrase = null;
16
        this.position = -1;
17
        this.description = I18N.Syntax_error_in_expression();
14 18
    }
15 19
    
16 20
    public ExpressionSyntaxException(LexicalAnalyzer lexer) {
17 21
        super("Syntax error in '"+lexer.getSource()+"' near character "+ lexer.getPosition()+".");
22
        this.phrase = lexer.getSource();
23
        this.position = lexer.getPosition();
24
        this.description = I18N.Syntax_error_near_character_XPositionX(position);
18 25
    }
19 26
    
20 27
    public ExpressionSyntaxException(String msg, LexicalAnalyzer lexer) {
21 28
        super("Syntax error in '"+lexer.getSource()+"' near character "+ lexer.getPosition()+". "+msg);
22 29
        this.phrase = lexer.getSource();
23 30
        this.position = lexer.getPosition();
31
        this.description = I18N.Syntax_error_near_character_XPositionX(position)+ " "+msg;
24 32
    }
25 33
    
26 34
    public ExpressionSyntaxException(String phrase, int position) {
27 35
        super("Syntax error in '"+phrase+"' near character "+ position+".");
28 36
        this.phrase = phrase;
29 37
        this.position = position;
38
        this.description = I18N.Syntax_error_near_character_XPositionX(position);
30 39
    }
31 40
    
32 41
    public ExpressionSyntaxException(String msg, String phrase, int position) {
33 42
        super("Syntax error in '"+phrase+"' near character "+ position+". "+msg);
34 43
        this.phrase = phrase;
35 44
        this.position = position;
45
        this.description = I18N.Syntax_error_near_character_XPositionX(position)+" "+msg;
36 46
    }
37 47
    
38 48
    public String getPhrase() {
......
42 52
    public int getPosition() {
43 53
        return this.position;
44 54
    }
55
    
56
    public String getDescription() {
57
        return this.description;
58
    }
45 59
}

Also available in: Unified diff