All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.hp.hpl.sparta.xpath.XPathException Maven / Gradle / Ivy

package com.hp.hpl.sparta.xpath;

import java.io.*;

/** Thrown when some problem parsing or executing an XPath expression.

 
Copyright (C) 2002 Hewlett-Packard Company. This file is part of Sparta, an XML Parser, DOM, and XPath library. This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
@version $Date: 2003/07/18 00:01:42 $ $Revision: 1.3 $ @author Eamonn O'Brien-Strain */ public class XPathException extends Exception { public XPathException(XPath xpath, String msg) { super(xpath + " " + msg); } XPathException(XPath xpath, String where, SimpleStreamTokenizer toks, String expected) { this(xpath, where + " got \"" + toString(toks) + "\" instead of expected " + expected); } XPathException(XPath xpath, Exception cause) { super(xpath + " " + cause); cause_ = cause; } public Throwable getCause() { return cause_; } static private String toString(SimpleStreamTokenizer toks) { try { StringBuffer result = new StringBuffer(); result.append(tokenToString(toks)); if (toks.ttype != SimpleStreamTokenizer.TT_EOF) { toks.nextToken(); result.append(tokenToString(toks)); toks.pushBack(); } return result.toString(); } catch (IOException e) { return "(cannot get info: " + e + ")"; } } static private String tokenToString(SimpleStreamTokenizer toks) { switch (toks.ttype) { case SimpleStreamTokenizer.TT_EOF: return ""; case SimpleStreamTokenizer.TT_NUMBER: return toks.nval + ""; case SimpleStreamTokenizer.TT_WORD: return toks.sval; default: return (char) toks.ttype + ""; } } private Throwable cause_ = null; } // $Log: XPathException.java,v $ // Revision 1.3 2003/07/18 00:01:42 eobrain // Make compatiblie with J2ME. For example do not use "new" // java.util classes. // // Revision 1.2 2003/05/12 20:08:29 eobrain // Inconsequential code change to avoid eclipse warning. // // Revision 1.1.1.1 2002/08/19 05:04:02 eobrain // import from HP Labs internal CVS // // Revision 1.4 2002/08/18 23:39:32 eob // Add copyright and other formatting and commenting in preparation for // release to SourceForge. // // Revision 1.3 2002/08/15 05:11:57 eob // add cause // // Revision 1.2 2002/05/23 21:07:07 eob // Better error reporting. // // Revision 1.1 2002/01/24 22:11:35 eob // initial




© 2015 - 2024 Weber Informatics LLC | Privacy Policy