/* * Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved. * ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. * * * * * * * * * * * * * * * * * * * * */ package javax.xml.bind; /** * A basic event handler interface for validation errors. * *
* If an application needs to implement customized event handling, it must * implement this interface and then register it with either the * {@link Unmarshaller#setEventHandler(ValidationEventHandler) Unmarshaller}, * the {@link Validator#setEventHandler(ValidationEventHandler) Validator}, or * the {@link Marshaller#setEventHandler(ValidationEventHandler) Marshaller}. * The JAXB Provider will then report validation errors and warnings encountered * during the unmarshal, marshal, and validate operations to these event * handlers. * *
* If the handleEvent method throws an unchecked runtime exception, * the JAXB Provider must treat that as if the method returned false, effectively * terminating whatever operation was in progress at the time (unmarshal, * validate, or marshal). * *
* Modifying the Java content tree within your event handler is undefined * by the specification and may result in unexpected behaviour. * *
* Failing to return false from the handleEvent method after * encountering a fatal error is undefined by the specification and may result * in unexpected behavior. * *
* Default Event Handler *
* See: Validator javadocs ** * @author
* If an unchecked runtime exception is thrown from this method, the JAXB * provider will treat it as if the method returned false and interrupt * the current unmarshal, validate, or marshal operation. * * @param event the encapsulated validation event information. It is a * provider error if this parameter is null. * @return true if the JAXB Provider should attempt to continue the current * unmarshal, validate, or marshal operation after handling this * warning/error, false if the provider should terminate the current * operation with the appropriate UnmarshalException, * ValidationException, or MarshalException. * @throws IllegalArgumentException if the event object is null. */ public boolean handleEvent( ValidationEvent event ); }