Class ClassSelector


  • public final class ClassSelector
    extends BindingComponent
    Manages association between XSComponents and generated CTypeInfos.

    This class determines which component is mapped to (or is not mapped to) what types.

    Author:
    Kohsuke Kawaguchi (kohsuke.kawaguchi@sun.com)
    • Constructor Detail

      • ClassSelector

        public ClassSelector()
    • Method Detail

      • getClassScope

        public final CClassInfoParent getClassScope()
        Gets the current class scope.
      • pushClassScope

        public final void pushClassScope​(CClassInfoParent clsFctry)
      • popClassScope

        public final void popClassScope()
      • getCurrentRoot

        public com.sun.xml.xsom.XSComponent getCurrentRoot()
      • getCurrentBean

        public CClassInfo getCurrentBean()
      • isBound

        public final CElement isBound​(com.sun.xml.xsom.XSElementDecl x,
                                      com.sun.xml.xsom.XSComponent referer)
        Checks if the given component is bound to a class.
      • bindToType

        public CTypeInfo bindToType​(com.sun.xml.xsom.XSComponent sc,
                                    com.sun.xml.xsom.XSComponent referer)
        Checks if the given component is being mapped to a type. If so, build that type and return that object. If it is not being mapped to a type item, return null.
      • bindToType

        public CElement bindToType​(com.sun.xml.xsom.XSElementDecl e,
                                   com.sun.xml.xsom.XSComponent referer)
      • bindToType

        public CClass bindToType​(com.sun.xml.xsom.XSComplexType t,
                                 com.sun.xml.xsom.XSComponent referer,
                                 boolean cannotBeDelayed)
      • bindToType

        public TypeUse bindToType​(com.sun.xml.xsom.XSType t,
                                  com.sun.xml.xsom.XSComponent referer)
      • executeTasks

        public void executeTasks()
        Runs all the pending build tasks.
      • queueBuild

        public void queueBuild​(com.sun.xml.xsom.XSComponent sc,
                               CElement bean)
      • getPackage

        public com.sun.codemodel.JPackage getPackage​(String targetNamespace)
        Gets the Java package to which classes from this namespace should go.

        Usually, the getOuterClass method should be used to determine where to put a class.