Class BIXSubstitutable

  • All Implemented Interfaces:
    BIDeclaration

    public final class BIXSubstitutable
    extends java.lang.Object
    Forces a non-collapsing behavior to allow extension schemas to perform element substitutions. See https://github.com/javaee/jaxb-v2/issues/289
    Since:
    2.1.1
    Author:
    Kohsuke Kawaguchi
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static javax.xml.namespace.QName NAME
      Name of the conversion declaration.
      protected BindInfo parent  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      protected BGMBuilder getBuilder()  
      java.util.Collection<BIDeclaration> getChildren()
      Gets child BIDeclarations if any.
      protected JCodeModel getCodeModel()  
      org.xml.sax.Locator getLocation()
      Gets the source location where this declaration was written.
      javax.xml.namespace.QName getName()
      Gets the name of this binding declaration, which is the same as the tag name of the binding element.
      protected XSComponent getOwner()  
      boolean isAcknowledged()
      Checks if this declaration was acknowledged.
      void markAsAcknowledged()
      Marks this declaration to be acknowledged -- either actually used or the existence is admitted (for example when a property customization is given at the point of definition.)
      void onSetOwner()
      Called when the parent BindInfo got its owner set.
      void setParent​(BindInfo p)
      Sets the parent BindInfo object of this declaration.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • NAME

        public static final javax.xml.namespace.QName NAME
        Name of the conversion declaration.
    • Constructor Detail

      • BIXSubstitutable

        public BIXSubstitutable()
    • Method Detail

      • getName

        public final javax.xml.namespace.QName getName()
        Description copied from interface: BIDeclaration
        Gets the name of this binding declaration, which is the same as the tag name of the binding element.
      • getLocation

        public org.xml.sax.Locator getLocation()
        Description copied from interface: BIDeclaration
        Gets the source location where this declaration was written. For declarations that are generated by XJC itself, this method returns null.
        Specified by:
        getLocation in interface BIDeclaration
      • setParent

        public void setParent​(BindInfo p)
        Description copied from interface: BIDeclaration
        Sets the parent BindInfo object of this declaration. A declaration object can use this pointer to access context information, such as other customizations.

        This method can be only called from BindInfo, and only once. This is a good opportunity to do some follow-up initialization after JAXB unmarshalling populated BIDeclaration.

        Specified by:
        setParent in interface BIDeclaration
      • getBuilder

        protected final BGMBuilder getBuilder()
      • getCodeModel

        protected final JCodeModel getCodeModel()
      • isAcknowledged

        public final boolean isAcknowledged()
        Description copied from interface: BIDeclaration
        Checks if this declaration was acknowledged.
        Specified by:
        isAcknowledged in interface BIDeclaration
      • onSetOwner

        public void onSetOwner()
        Description copied from interface: BIDeclaration
        Called when the parent BindInfo got its owner set. This is when declarations are connected to BGMBuilder and its sibling components.
        Specified by:
        onSetOwner in interface BIDeclaration
      • markAsAcknowledged

        public void markAsAcknowledged()
        Description copied from interface: BIDeclaration
        Marks this declaration to be acknowledged -- either actually used or the existence is admitted (for example when a property customization is given at the point of definition.)

        Declarations that are not acknowledged will be considered as an error.

        Specified by:
        markAsAcknowledged in interface BIDeclaration