Home | History | Annotate | Download | only in reader
      1 /**
      2  * Copyright (c) 2008, http://www.snakeyaml.org
      3  *
      4  * Licensed under the Apache License, Version 2.0 (the "License");
      5  * you may not use this file except in compliance with the License.
      6  * You may obtain a copy of the License at
      7  *
      8  *     http://www.apache.org/licenses/LICENSE-2.0
      9  *
     10  * Unless required by applicable law or agreed to in writing, software
     11  * distributed under the License is distributed on an "AS IS" BASIS,
     12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     13  * See the License for the specific language governing permissions and
     14  * limitations under the License.
     15  */
     16 package org.yaml.snakeyaml.reader;
     17 
     18 import org.yaml.snakeyaml.error.YAMLException;
     19 
     20 public class ReaderException extends YAMLException {
     21     private static final long serialVersionUID = 8710781187529689083L;
     22     private final String name;
     23     private final char character;
     24     private final int position;
     25 
     26     public ReaderException(String name, int position, char character, String message) {
     27         super(message);
     28         this.name = name;
     29         this.character = character;
     30         this.position = position;
     31     }
     32 
     33     public String getName() {
     34         return name;
     35     }
     36 
     37     public char getCharacter() {
     38         return character;
     39     }
     40 
     41     public int getPosition() {
     42         return position;
     43     }
     44 
     45     @Override
     46     public String toString() {
     47         return "unacceptable character '" + character + "' (0x"
     48                 + Integer.toHexString((int) character).toUpperCase() + ") " + getMessage()
     49                 + "\nin \"" + name + "\", position " + position;
     50     }
     51 }
     52