Top Description Fields Constructors Methods
com.sun.tools.xjc.model

public final Class CArrayInfo

extends AbstractCTypeInfoImpl
implements ArrayInfo<NType, NClass>, CNonElement, NType
Class Inheritance
All Implemented Interfaces
com.sun.tools.xjc.model.nav.NType, com.sun.tools.xjc.model.CNonElement, com.sun.tools.xjc.model.CTypeInfo, com.sun.tools.xjc.model.CCustomizable, org.glassfish.jaxb.core.v2.model.core.TypeInfo, org.glassfish.jaxb.core.v2.model.annotation.Locatable, com.sun.tools.xjc.model.TypeUse, org.glassfish.jaxb.core.v2.model.core.NonElement, org.glassfish.jaxb.core.v2.model.core.ArrayInfo
Imports
javax.xml.namespace.QName, com.sun.codemodel.JType, com.sun.tools.xjc.outline.Aspect, .Outline, org.glassfish.jaxb.core.v2.model.util.ArrayInfoUtil, com.sun.tools.xjc.model.nav.NClass, .NType, org.glassfish.jaxb.core.v2.model.core.ArrayInfo, com.sun.xml.xsom.XSComponent, org.xml.sax.Locator

Because XJC doesn't generate the array binding, this class will never show up in the model constructed by XJC.

This class is nevertheless defined to make the type checker happy.

Author
Kohsuke Kawaguchi

Field Summary

Modifier and TypeField and Description
private final CNonElement
private final QName

Constructor Summary

AccessConstructor and Description
public
CArrayInfo(Model model, CNonElement itemType, XSComponent source, CCustomizations customizations)

Method Summary

Modifier and TypeMethod and Description
public String
fullName()

Implements com.sun.tools.xjc.model.nav.NType.fullName.

Human readable name of this type.

public CNonElement
getInfo()

Implements com.sun.tools.xjc.model.CNonElement.getInfo.

Deprecated

Guaranteed to return this.

public CNonElement
public Locator
getLocator()

Implements com.sun.tools.xjc.model.CCustomizable.getLocator.

Gets the source location in the schema from which this model component is created.

public NType
getType()

Implements org.glassfish.jaxb.core.v2.model.core.TypeInfo.getType.

Gets the underlying Java type that object represents.

public QName
getTypeName()

Implements org.glassfish.jaxb.core.v2.model.core.NonElement.getTypeName.

Gets the primary XML type ANYTYPE_NAME of the class.

public boolean
isBoxedType()

Implements com.sun.tools.xjc.model.nav.NType.isBoxedType.

Returns true iff this type represents a class that has a unboxed form.

public boolean
isSimpleType()

Implements org.glassfish.jaxb.core.v2.model.core.NonElement.isSimpleType.

Returns true if this maps to text in XML, without any attribute nor child elements.

public JType
toType(Outline o, Aspect aspect)

Implements com.sun.tools.xjc.model.CTypeInfo.toType, com.sun.tools.xjc.model.nav.NType.toType.

Returns the representation of this type in code model.

Inherited from com.sun.tools.xjc.model.AbstractCTypeInfoImpl:
canBeReferencedByIDREFcreateConstantgetAdapterUsegetCustomizationsgetExpectedMimeTypegetLocationgetSchemaComponentgetUpstreamidUseisCollection

Field Detail

itemTypeback to summary
private final CNonElement itemType
typeNameback to summary
private final QName typeName

Constructor Detail

CArrayInfoback to summary
public CArrayInfo(Model model, CNonElement itemType, XSComponent source, CCustomizations customizations)

Method Detail

fullNameback to summary
public String fullName()

Implements com.sun.tools.xjc.model.nav.NType.fullName.

Doc from com.sun.tools.xjc.model.nav.NType.fullName.

Human readable name of this type.

Annotations
@Override
getInfoback to summary
public CNonElement getInfo()

Implements com.sun.tools.xjc.model.CNonElement.getInfo.

Doc from com.sun.tools.xjc.model.CNonElement.getInfo.

Deprecated

Guaranteed to return this.

Annotations
@Deprecated
@Override
getItemTypeback to summary
public CNonElement getItemType()

Implements org.glassfish.jaxb.core.v2.model.core.ArrayInfo.getItemType.

Doc from org.glassfish.jaxb.core.v2.model.core.ArrayInfo.getItemType.

T of T[]. The type of the items of the array.

Annotations
@Override
getLocatorback to summary
public Locator getLocator()

Implements com.sun.tools.xjc.model.CCustomizable.getLocator.

Doc from com.sun.tools.xjc.model.CCustomizable.getLocator.

Gets the source location in the schema from which this model component is created.

Annotations
@Override
getTypeback to summary
public NType getType()

Implements org.glassfish.jaxb.core.v2.model.core.TypeInfo.getType.

Doc from org.glassfish.jaxb.core.v2.model.core.TypeInfo.getType.

Gets the underlying Java type that object represents.

Annotations
@Override
getTypeNameback to summary
public QName getTypeName()

Implements org.glassfish.jaxb.core.v2.model.core.NonElement.getTypeName.

Doc from org.glassfish.jaxb.core.v2.model.core.NonElement.getTypeName.

Gets the primary XML type ANYTYPE_NAME of the class.

A Java type can be mapped to multiple XML types, but one of them is considered "primary" and used when we generate a schema.

Annotations
@Override
isBoxedTypeback to summary
public boolean isBoxedType()

Implements com.sun.tools.xjc.model.nav.NType.isBoxedType.

Doc from com.sun.tools.xjc.model.nav.NType.isBoxedType.

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.

Annotations
@Override
isSimpleTypeback to summary
public boolean isSimpleType()

Implements org.glassfish.jaxb.core.v2.model.core.NonElement.isSimpleType.

Doc from org.glassfish.jaxb.core.v2.model.core.NonElement.isSimpleType.

Returns true if this maps to text in XML, without any attribute nor child elements.

Annotations
@Override
toTypeback to summary
public JType toType(Outline o, Aspect aspect)

Implements com.sun.tools.xjc.model.CTypeInfo.toType, com.sun.tools.xjc.model.nav.NType.toType.

Doc from com.sun.tools.xjc.model.nav.NType.toType.

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.

Annotations
@Override