23 * questions. |
23 * questions. |
24 */ |
24 */ |
25 |
25 |
26 package com.sun.xml.internal.bind.v2.model.core; |
26 package com.sun.xml.internal.bind.v2.model.core; |
27 |
27 |
28 import com.sun.xml.internal.bind.v2.model.impl.ModelBuilder; |
|
29 import com.sun.xml.internal.bind.v2.runtime.IllegalAnnotationException; |
28 import com.sun.xml.internal.bind.v2.runtime.IllegalAnnotationException; |
30 |
29 |
31 /** |
30 /** |
32 * listen to static errors found during building a JAXB model from a set of classes. |
31 * listen to static errors found during building a JAXB model from a set of classes. |
33 * Implemented by the client of {@link ModelBuilder}. |
32 * Implemented by the client of {@link com.sun.xml.internal.bind.v2.model.impl.ModelBuilder}. |
34 * |
33 * |
35 * <p> |
34 * <p> |
36 * All the static errors have to be reported while constructing a |
35 * All the static errors have to be reported while constructing a |
37 * model, not when a model is used (IOW, until the {@link ModelBuilder#link} completes. |
36 * model, not when a model is used (IOW, until the {@link com.sun.xml.internal.bind.v2.model.impl.ModelBuilder#link} completes. |
38 * Internally, {@link ModelBuilder} wraps an {@link ErrorHandler} and all the model |
37 * Internally, {@link com.sun.xml.internal.bind.v2.model.impl.ModelBuilder} wraps an {@link ErrorHandler} and all the model |
39 * components should report errors through it. |
38 * components should report errors through it. |
40 * |
39 * |
41 * <p> |
40 * <p> |
42 * {@link IllegalAnnotationException} is a checked exception to remind |
41 * {@link IllegalAnnotationException} is a checked exception to remind |
43 * the model classes to report it rather than to throw it. |
42 * the model classes to report it rather than to throw it. |
44 * |
43 * |
45 * @see ModelBuilder |
44 * @see com.sun.xml.internal.bind.v2.model.impl.ModelBuilder |
46 * @author Kohsuke Kawaguchi |
45 * @author Kohsuke Kawaguchi |
47 */ |
46 */ |
48 public interface ErrorHandler { |
47 public interface ErrorHandler { |
49 /** |
48 /** |
50 * Receives a notification for an error in the annotated code. |
49 * Receives a notification for an error in the annotated code. |