Constructor and Description |
---|
PluginImpl() |
Modifier and Type | Method and Description |
---|---|
List<String> |
getCustomizationURIs()
Returns the list of namespace URIs that are supported by this plug-in
as schema annotations.
|
String |
getOptionName()
Gets the option name to turn on this add-on.
|
String |
getUsage()
Gets the description of this add-on.
|
boolean |
isCustomizationTagName(String nsUri,
String localName)
Checks if the given tag name is a valid tag name for the customization element in this plug-in.
|
boolean |
run(Outline model,
Options opt,
ErrorHandler errorHandler)
Run the add-on.
|
onActivated, parseArgument, postProcessModel
public String getOptionName()
Plugin
For example, if "abc" is returned, "-abc" will
turn on this plugin. A plugin needs to be turned
on explicitly, or else no other methods of Plugin
will be invoked.
Starting 2.1, when an option matches the name returned
from this method, XJC will then invoke Plugin.parseArgument(Options, String[], int)
,
allowing plugins to handle arguments to this option.
getOptionName
in class Plugin
public List<String> getCustomizationURIs()
Plugin
If a plug-in returns a non-empty list, the JAXB RI will recognize these namespace URIs as vendor extensions (much like "http://java.sun.com/xml/ns/jaxb/xjc"). This allows users to write those annotations inside a schema, or in external binding files, and later plug-ins can access those annotations as DOM nodes.
See http://java.sun.com/webservices/docs/1.5/jaxb/vendorCustomizations.html for the syntax that users need to use to enable extension URIs.
getCustomizationURIs
in class Plugin
public boolean isCustomizationTagName(String nsUri, String localName)
Plugin
This method is invoked by XJC to determine if the user-specified customization element is really a customization or not. This information is used to pick the proper error message.
A plug-in is still encouraged to do the validation of the customization element in the
Plugin.run(com.sun.tools.xjc.outline.Outline, com.sun.tools.xjc.Options, org.xml.sax.ErrorHandler)
method before using any CPluginCustomization
, to make sure that it
has proper child elements and attributes.
isCustomizationTagName
in class Plugin
nsUri
- the namespace URI of the element. Never null.localName
- the local name of the element. Never null.public String getUsage()
Plugin
public boolean run(@NotNull Outline model, Options opt, ErrorHandler errorHandler)
Plugin
This method is invoked after XJC has internally finished
the code generation. Plugins can tweak some of the generated
code (or add more code) by using Outline
and Options
.
Note that this method is invoked only when a Plugin
is activated.
run
in class Plugin
model
- This object allows access to various generated code.errorHandler
- Errors should be reported to this handler.Copyright © 2020 JBoss by Red Hat. All rights reserved.