org.codehaus.stax2.XMLReporter2 Maven / Gradle / Ivy
package org.codehaus.stax2;
import javax.xml.stream.XMLReporter;
import javax.xml.stream.XMLStreamException;
import org.codehaus.stax2.validation.XMLValidationProblem;
/**
* Extension of {@link XMLReporter} to allow for better access to
* information about the actual problem.
*
* Note on type of problems reported: although type is
* {@link XMLValidationProblem}, it is not strictly related to (optional)
* validation process. That is, non-fatal problems related to well-formedness
* (mostly in areas of DTD definition, or in some cases problems that would
* be fatal normally but have been suppressed by the calling app) will
* also be reported through this interface if registered.
*
* Stax2 implementations are encouraged to always try to call the improved
* report
method, and only call the base interface version if
* registered report is not of type {@link XMLReporter2}.
*
* @since 3.0
*/
public interface XMLReporter2
extends XMLReporter
{
// From base interface:
//public void report(String message, String errorType, Object relatedInformation, Location location)
/**
* Reporting method called with reference to object that defines
* exact problem being encountered. Implementor is free to
* quietly handle the problem, or to throw an exception
* to cause abnormal termination of xml processing.
*/
public void report(XMLValidationProblem problem) throws XMLStreamException;
}