java.lang.Object
com.sun.tools.xjc.reader.xmlschema.bindinfo.BindInfo
All Implemented Interfaces:
Iterable<BIDeclaration>

public final class BindInfo extends Object implements Iterable<BIDeclaration>
Container for customization declarations. We use JAXB ourselves and parse this object from "xs:annotation".
Author:
Kohsuke Kawaguchi (kohsuke,[email protected])
  • Field Details

    • empty

      public static final BindInfo empty
      An instance with the empty contents.
    • bindingFileSchema

      public static final SchemaCache bindingFileSchema
      Lazily parsed schema for the binding file.
  • Constructor Details

    • BindInfo

      public BindInfo()
      Default constructor.
  • Method Details

    • isPointless

      public boolean isPointless()
      Returns true if this doesn't contain any useful information. This flag is used to discard unused s early to save memory footprint.
    • getSourceLocation

      public Locator getSourceLocation()
      Gets the location of this annotation in the source file.
      Returns:
      If the declarations are in fact specified in the source code, a non-null valid object will be returned. If this BindInfo is generated internally by XJC, then null will be returned.
    • setOwner

      public void setOwner(BGMBuilder _builder, XSComponent _owner)
      Sets the owner schema component and a reference to BGMBuilder. This method is called from the BGMBuilder before any BIDeclaration inside it is used.
    • getOwner

      public XSComponent getOwner()
    • getBuilder

      public BGMBuilder getBuilder()
      Back pointer to the BGMBuilder which is building a BGM from schema components including this customization.
    • addDecl

      public void addDecl(BIDeclaration decl)
      Adds a new declaration.
    • get

      public <T extends BIDeclaration> T get(Class<T> kind)
      Gets the first declaration with a given name, or null if none is found.
    • getDecls

      public BIDeclaration[] getDecls()
      Gets all the declarations
    • getDocumentation

      public String getDocumentation()
      Gets the documentation parsed from <xs:documentation>s. The returned collection is to be added to JDocComment.append(Object).
      Returns:
      maybe null.
    • absorb

      public void absorb(BindInfo bi)
      Merges all the declarations inside the given BindInfo to this BindInfo.
    • size

      public int size()
      Gets the number of declarations.
    • get

      public BIDeclaration get(int idx)
    • iterator

      public Iterator<BIDeclaration> iterator()
      Specified by:
      iterator in interface Iterable<BIDeclaration>
    • toCustomizationList

      public CCustomizations toCustomizationList()
      Gets the list of CPluginCustomizations from this.

      Note that calling this method marks all those plug-in customizations as 'used'. So call it only when it's really necessary.

    • getCustomizationContext

      public static JAXBContext getCustomizationContext()
    • getCustomizationUnmarshaller

      public static Unmarshaller getCustomizationUnmarshaller()