286N/A/*
286N/A * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
286N/A *
286N/A * This code is free software; you can redistribute it and/or modify it
286N/A * under the terms of the GNU General Public License version 2 only, as
286N/A * published by the Free Software Foundation. Oracle designates this
286N/A * particular file as subject to the "Classpath" exception as provided
286N/A * by Oracle in the LICENSE file that accompanied this code.
286N/A *
286N/A * This code is distributed in the hope that it will be useful, but WITHOUT
286N/A * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
286N/A * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
286N/A * version 2 for more details (a copy is included in the LICENSE file that
286N/A * accompanied this code).
286N/A *
286N/A * You should have received a copy of the GNU General Public License version
286N/A * 2 along with this work; if not, write to the Free Software Foundation,
286N/A * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
286N/A *
286N/A * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
286N/A * or visit www.oracle.com if you need additional information or have any
286N/A * questions.
286N/A */
286N/A
286N/A/*
286N/A * Copyright (c) 2009 by Oracle Corporation. All Rights Reserved.
286N/A */
286N/A
286N/Apackage javax.xml.stream;
286N/A
286N/A/**
286N/A * The base exception for unexpected processing errors. This Exception
286N/A * class is used to report well-formedness errors as well as unexpected
286N/A * processing conditions.
286N/A * @version 1.0
286N/A * @author Copyright (c) 2009 by Oracle Corporation. All Rights Reserved.
286N/A * @since 1.6
286N/A */
286N/A
286N/Apublic class XMLStreamException extends Exception {
286N/A
286N/A protected Throwable nested;
286N/A protected Location location;
286N/A
286N/A /**
286N/A * Default constructor
286N/A */
286N/A public XMLStreamException(){
286N/A super();
286N/A }
286N/A
286N/A /**
286N/A * Construct an exception with the assocated message.
286N/A *
286N/A * @param msg the message to report
286N/A */
286N/A public XMLStreamException(String msg) {
286N/A super(msg);
286N/A }
286N/A
286N/A /**
286N/A * Construct an exception with the assocated exception
286N/A *
286N/A * @param th a nested exception
286N/A */
286N/A public XMLStreamException(Throwable th) {
286N/A super(th);
286N/A nested = th;
286N/A }
286N/A
286N/A /**
286N/A * Construct an exception with the assocated message and exception
286N/A *
286N/A * @param th a nested exception
286N/A * @param msg the message to report
286N/A */
286N/A public XMLStreamException(String msg, Throwable th) {
286N/A super(msg, th);
286N/A nested = th;
286N/A }
286N/A
286N/A /**
286N/A * Construct an exception with the assocated message, exception and location.
286N/A *
286N/A * @param th a nested exception
286N/A * @param msg the message to report
286N/A * @param location the location of the error
286N/A */
286N/A public XMLStreamException(String msg, Location location, Throwable th) {
286N/A super("ParseError at [row,col]:["+location.getLineNumber()+","+
286N/A location.getColumnNumber()+"]\n"+
286N/A "Message: "+msg);
286N/A nested = th;
286N/A this.location = location;
286N/A }
286N/A
286N/A /**
286N/A * Construct an exception with the assocated message, exception and location.
286N/A *
286N/A * @param msg the message to report
286N/A * @param location the location of the error
286N/A */
286N/A public XMLStreamException(String msg,
286N/A Location location) {
286N/A super("ParseError at [row,col]:["+location.getLineNumber()+","+
286N/A location.getColumnNumber()+"]\n"+
286N/A "Message: "+msg);
286N/A this.location = location;
286N/A }
286N/A
286N/A
286N/A /**
286N/A * Gets the nested exception.
286N/A *
286N/A * @return Nested exception
286N/A */
286N/A public Throwable getNestedException() {
286N/A return nested;
286N/A }
286N/A
286N/A /**
286N/A * Gets the location of the exception
286N/A *
286N/A * @return the location of the exception, may be null if none is available
286N/A */
286N/A public Location getLocation() {
286N/A return location;
286N/A }
286N/A
286N/A}