- java.lang.Object
-
- com.sun.tools.xjc.XJCListener
-
- All Implemented Interfaces:
ErrorListener
,ErrorListener
,ErrorHandler
public abstract class XJCListener extends Object implements ErrorListener
Call-back interface that can be implemented by the caller ofDriver
to receive output from XJC.Most of the messages XJC produce once the real work starts is structured as (message,source). Those outputs will be reported to various methods on
ErrorListener
, which is inherited by this interface.The other messages (such as the usage screen when there was an error in the command line option) will go to the
message(String)
method.- Since:
- JAXB 2.0 EA
- Author:
- Kohsuke Kawaguchi
-
-
Constructor Summary
Constructors Constructor Description XJCListener()
Default constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
compiled(Outline outline)
Called after the schema is compiled and the code generation strategy is determined, but before any code is actually generated as files.void
generatedFile(String fileName, int current, int total)
Called for each file generated by XJC.boolean
isCanceled()
XJC will periodically invoke this method to see if it should cancel a compilation.void
message(String msg)
Other miscellenous messages that do not have structures will be reported through this method.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface com.sun.tools.xjc.api.ErrorListener
error, fatalError, info, warning
-
-
-
-
Method Detail
-
generatedFile
public void generatedFile(String fileName, int current, int total)
Called for each file generated by XJC.XJC may generate not only source files but also resources files. The file name includes the path portions that correspond with the package name.
When generating files into a directory, file names will be relative to the output directory. When generating files into a zip file, file names will be those in the zip file.
- Parameters:
fileName
- file names like "org/acme/foo/Foo.java" or "org/acme/foo/jaxb.properties".- Since:
- 2.0.1
-
message
public void message(String msg)
Other miscellenous messages that do not have structures will be reported through this method. This method is used likePrintStream.println(String)
. The callee is expected to add '\n'.
-
compiled
public void compiled(Outline outline)
Called after the schema is compiled and the code generation strategy is determined, but before any code is actually generated as files.- Parameters:
outline
- never null. this is the root object that represents the code generation strategy.
-
isCanceled
public boolean isCanceled()
XJC will periodically invoke this method to see if it should cancel a compilation.As long as this method returns false, XJC will keep going. If this method ever returns true, XJC will abort the processing right away and returns non-zero from
Driver.run(String[], XJCListener)
. Note that XJC will not report an abortion through themessage(String)
method.Note that despite all the efforts to check this method frequently, XJC may still fail to invoke this method for a long time. Such scenario would include network related problems or other I/O block (you can't even interrupt the thread while I/O is blocking.) So just beware that this is not a cure-all.
- Returns:
- true if the wants to abort the processing.
- Since:
- 2.1
-
-