< prev index next >

src/jdk.xml.bind/share/classes/com/sun/tools/internal/xjc/reader/internalizer/SCDBasedBindingSet.java

Print this page




  55  * Set of binding nodes that have target nodes specified via SCD.
  56  *
  57  * This is parsed during {@link Internalizer} works on the tree,
  58  * but applying this has to wait for {@link XSSchemaSet} to be parsed.
  59  *
  60  * @author Kohsuke Kawaguchi
  61  * @see SCD
  62  */
  63 public final class SCDBasedBindingSet {
  64 
  65     /**
  66      * Represents the target schema component of the
  67      * customization identified by SCD.
  68      *
  69      * @author Kohsuke Kawaguchi
  70      */
  71     final class Target {
  72         /**
  73          * SCDs can be specified via multiple steps, like:
  74          *
  75          * <xmp>
  76          * <bindings scd="foo/bar">
  77          *   <bindings scd="zot/xyz">
  78          * </xmp>
  79          *
  80          * This field and {@link #nextSibling} form a single-linked list that
  81          * represent the children that shall be evaluated within this target.
  82          * Think of it as {@code List<Target>}.
  83          */
  84         private Target firstChild;
  85         private final Target nextSibling;
  86 
  87         /**
  88          * Compiled SCD.
  89          */
  90         private final @NotNull SCD scd;
  91 
  92         /**
  93          * The element on which SCD was found.
  94          */
  95         private final @NotNull Element src;
  96 
  97         /**
  98          * Bindings that apply to this SCD.




  55  * Set of binding nodes that have target nodes specified via SCD.
  56  *
  57  * This is parsed during {@link Internalizer} works on the tree,
  58  * but applying this has to wait for {@link XSSchemaSet} to be parsed.
  59  *
  60  * @author Kohsuke Kawaguchi
  61  * @see SCD
  62  */
  63 public final class SCDBasedBindingSet {
  64 
  65     /**
  66      * Represents the target schema component of the
  67      * customization identified by SCD.
  68      *
  69      * @author Kohsuke Kawaguchi
  70      */
  71     final class Target {
  72         /**
  73          * SCDs can be specified via multiple steps, like:
  74          *
  75          * <pre>{@code
  76          * <bindings scd="foo/bar">
  77          *   <bindings scd="zot/xyz">
  78          * }</pre>
  79          *
  80          * This field and {@link #nextSibling} form a single-linked list that
  81          * represent the children that shall be evaluated within this target.
  82          * Think of it as {@code List<Target>}.
  83          */
  84         private Target firstChild;
  85         private final Target nextSibling;
  86 
  87         /**
  88          * Compiled SCD.
  89          */
  90         private final @NotNull SCD scd;
  91 
  92         /**
  93          * The element on which SCD was found.
  94          */
  95         private final @NotNull Element src;
  96 
  97         /**
  98          * Bindings that apply to this SCD.


< prev index next >