Class CClassRef

java.lang.Object
com.sun.tools.xjc.model.CClassRef
All Implemented Interfaces:
CClass, CCustomizable, CElement, CNonElement, CTypeInfo, NClass, NType, TypeUse, org.glassfish.jaxb.core.v2.model.annotation.Locatable, org.glassfish.jaxb.core.v2.model.core.Element<NType,NClass>, org.glassfish.jaxb.core.v2.model.core.NonElement<NType,NClass>, org.glassfish.jaxb.core.v2.model.core.TypeInfo<NType,NClass>

public final class CClassRef extends Object implements NClass, CClass
Reference to an existing class.
Author:
Kohsuke Kawaguchi
  • Constructor Details

  • Method Details

    • setAbstract

      public void setAbstract()
      Description copied from interface: CElement
      Marks this element as an abstract element.
      Specified by:
      setAbstract in interface CElement
    • isAbstract

      public boolean isAbstract()
      Description copied from interface: CElement
      Returns true iff this element is an abstract element.
      Specified by:
      isAbstract in interface CElement
      Specified by:
      isAbstract in interface NClass
    • getType

      public NType getType()
      Specified by:
      getType in interface org.glassfish.jaxb.core.v2.model.core.TypeInfo<NType,NClass>
    • toType

      public JClass toType(Outline o, Aspect aspect)
      Description copied from interface: NType
      Returns the representation of this type in code model.

      This operation requires the whole model to be built, and hence it takes Outline.

      Under some code generation strategy, some bean classes are considered implementation specific (such as impl.FooImpl class) These classes always have accompanying "exposed" type (such as the Foo interface).

      For such Jekyll and Hyde type, the aspect parameter determines which personality is returned.

      Specified by:
      toType in interface CTypeInfo
      Specified by:
      toType in interface NClass
      Specified by:
      toType in interface NType
      aspect - If Aspect.IMPLEMENTATION, this method returns the implementation specific class that this type represents. If Aspect.EXPOSED, this method returns the publicly exposed type that this type represents. For ordinary classes, the aspect parameter is meaningless.
      See Also:
    • fullName

      public String fullName()
      Description copied from interface: NType
      Human readable name of this type.
      Specified by:
      fullName in interface NType
    • getTypeName

      public QName getTypeName()
      Specified by:
      getTypeName in interface org.glassfish.jaxb.core.v2.model.core.NonElement<NType,NClass>
    • getInfo

      @Deprecated public CNonElement getInfo()
      Deprecated.
      Guaranteed to return this.
      Specified by:
      getInfo in interface CNonElement
      Specified by:
      getInfo in interface TypeUse
    • getSubstitutionHead

      public CElement getSubstitutionHead()
      Specified by:
      getSubstitutionHead in interface org.glassfish.jaxb.core.v2.model.core.Element<NType,NClass>
    • getScope

      public CClassInfo getScope()
      Specified by:
      getScope in interface org.glassfish.jaxb.core.v2.model.core.Element<NType,NClass>
    • getElementName

      public QName getElementName()
      Specified by:
      getElementName in interface org.glassfish.jaxb.core.v2.model.core.Element<NType,NClass>
    • isBoxedType

      public boolean isBoxedType()
      Description copied from interface: NType
      Returns true iff this type represents a class that has a unboxed form. For example, for String this is false, but for Integer this is true.
      Specified by:
      isBoxedType in interface NType
    • isSimpleType

      public boolean isSimpleType()
      Specified by:
      isSimpleType in interface org.glassfish.jaxb.core.v2.model.core.NonElement<NType,NClass>
    • getLocator

      public Locator getLocator()
      Description copied from interface: CCustomizable
      Gets the source location in the schema from which this model component is created.
      Specified by:
      getLocator in interface CCustomizable
      Returns:
      never null.
    • isCollection

      public final boolean isCollection()
    • getAdapterUse

      public final CAdapter getAdapterUse()
    • idUse

      public final org.glassfish.jaxb.core.v2.model.core.ID idUse()
    • getSchemaComponent

      public final XSComponent getSchemaComponent()
      Description copied from interface: CCustomizable
      If this model object is built from XML Schema, this property returns a schema component from which the model is built.
      Specified by:
      getSchemaComponent in interface CCustomizable
      Returns:
      null if the model is built from sources other than XML Schema (such as DTD.)
    • canBeReferencedByIDREF

      @Deprecated public final boolean canBeReferencedByIDREF()
      Deprecated.
      why are you calling an unimplemented method?
      Specified by:
      canBeReferencedByIDREF in interface org.glassfish.jaxb.core.v2.model.core.TypeInfo<NType,NClass>
    • getExpectedMimeType

      public jakarta.activation.MimeType getExpectedMimeType()
      No default MimeType.
    • getCustomizations

      public CCustomizations getCustomizations()
      Description copied from interface: CCustomizable
      Gets the list of customizations attached to this model component.
      Specified by:
      getCustomizations in interface CCustomizable
      Returns:
      can be an empty list but never be null. The returned list is read-only. Do not modify.
      See Also:
    • createConstant

      public JExpression createConstant(Outline outline, XmlString lexical)
    • getUpstream

      public final org.glassfish.jaxb.core.v2.model.annotation.Locatable getUpstream()
      Specified by:
      getUpstream in interface org.glassfish.jaxb.core.v2.model.annotation.Locatable
    • getLocation

      public final org.glassfish.jaxb.core.v2.runtime.Location getLocation()
      Specified by:
      getLocation in interface org.glassfish.jaxb.core.v2.model.annotation.Locatable