|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectcom.sun.tools.xjc.model.CEnumLeafInfo
public final class CEnumLeafInfo
Transducer that converts a string into an "enumeration class." The structure of the generated class needs to precisely follow the JAXB spec.
Field Summary | |
---|---|
CNonElement |
base
Represents the underlying type of this enumeration and its conversion. |
java.lang.String |
javadoc
|
java.util.Collection<CEnumConstant> |
members
List of enum members. |
Model |
model
The Model object to which this bean belongs. |
CClassInfoParent |
parent
The parent into which the enum class should be generated. |
java.lang.String |
shortName
Short name of the generated type-safe enum. |
Constructor Summary | |
---|---|
CEnumLeafInfo(Model model,
javax.xml.namespace.QName typeName,
CClassInfoParent container,
java.lang.String shortName,
CNonElement base,
java.util.Collection<CEnumConstant> _members,
com.sun.xml.xsom.XSComponent source,
CCustomizations customizations,
org.xml.sax.Locator _sourceLocator)
|
Method Summary | |
---|---|
com.sun.xml.bind.v2.model.core.Element<NType,NClass> |
asElement()
|
boolean |
canBeReferencedByIDREF()
Deprecated. why are you calling the method whose return value is known? |
com.sun.codemodel.JExpression |
createConstant(Outline outline,
com.sun.xml.xsom.XmlString literal)
Creates a constant for the given lexical value. |
java.lang.String |
fullName()
Human readable name of this type. |
CAdapter |
getAdapterUse()
If this type use is adapting the type, returns the adapter. |
com.sun.xml.bind.v2.model.core.NonElement<NType,NClass> |
getBaseType()
|
NClass |
getClazz()
|
java.util.Collection<CEnumConstant> |
getConstants()
|
CCustomizations |
getCustomizations()
Gets the list of customizations attached to this model component. |
javax.xml.namespace.QName |
getElementName()
|
javax.activation.MimeType |
getExpectedMimeType()
A TypeUse can have an associated MIME type. |
CTypeInfo |
getInfo()
Individual item type. |
com.sun.xml.bind.v2.runtime.Location |
getLocation()
|
org.xml.sax.Locator |
getLocator()
Source line information that points to the place where this type-safe enum is defined. |
com.sun.xml.xsom.XSComponent |
getSchemaComponent()
If this model object is built from XML Schema, this property returns a schema component from which the model is built. |
NType |
getType()
|
javax.xml.namespace.QName |
getTypeName()
|
com.sun.xml.bind.v2.model.annotation.Locatable |
getUpstream()
|
com.sun.xml.bind.v2.model.core.ID |
idUse()
Whether the referenced type (individual item type in case of collection) is ID/IDREF. |
boolean |
isAbstract()
|
boolean |
isBoxedType()
Returns true iff this type represents a class that has a unboxed form. |
boolean |
isCollection()
If the use can hold multiple values of the specified type. |
boolean |
isElement()
|
boolean |
isPrimitive()
|
boolean |
isSimpleType()
|
boolean |
needsValueField()
The spec says the value field in the enum class will be generated only under certain circumstances. |
com.sun.codemodel.JClass |
toType(Outline o,
Aspect aspect)
Returns the JClass that represents the class being bound,
under the given Outline . |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public final Model model
Model
object to which this bean belongs.
public final CClassInfoParent parent
public final java.lang.String shortName
public final CNonElement base
To parse XML into a constant, we use the base type to do lexical -> value, then use a map to pick up the right one.
Hence this also represents the type of the Java value. For example, if this is an enumeration of xs:int, then this field will be Java int.
public final java.util.Collection<CEnumConstant> members
public java.lang.String javadoc
Constructor Detail |
---|
public CEnumLeafInfo(Model model, javax.xml.namespace.QName typeName, CClassInfoParent container, java.lang.String shortName, CNonElement base, java.util.Collection<CEnumConstant> _members, com.sun.xml.xsom.XSComponent source, CCustomizations customizations, org.xml.sax.Locator _sourceLocator)
Method Detail |
---|
public org.xml.sax.Locator getLocator()
getLocator
in interface CCustomizable
public javax.xml.namespace.QName getTypeName()
getTypeName
in interface com.sun.xml.bind.v2.model.core.NonElement<NType,NClass>
public NType getType()
getType
in interface com.sun.xml.bind.v2.model.core.TypeInfo<NType,NClass>
public boolean canBeReferencedByIDREF()
canBeReferencedByIDREF
in interface com.sun.xml.bind.v2.model.core.TypeInfo<NType,NClass>
public boolean isElement()
isElement
in interface com.sun.xml.bind.v2.model.core.MaybeElement<NType,NClass>
public javax.xml.namespace.QName getElementName()
getElementName
in interface com.sun.xml.bind.v2.model.core.MaybeElement<NType,NClass>
public com.sun.xml.bind.v2.model.core.Element<NType,NClass> asElement()
asElement
in interface com.sun.xml.bind.v2.model.core.MaybeElement<NType,NClass>
public NClass getClazz()
getClazz
in interface com.sun.xml.bind.v2.model.core.EnumLeafInfo<NType,NClass>
public com.sun.xml.xsom.XSComponent getSchemaComponent()
CCustomizable
getSchemaComponent
in interface CCustomizable
public com.sun.codemodel.JClass toType(Outline o, Aspect aspect)
CTypeInfo
JClass
that represents the class being bound,
under the given Outline
.
toType
in interface CTypeInfo
toType
in interface NClass
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.NType.toType(Outline, Aspect)
public boolean isAbstract()
isAbstract
in interface NClass
public boolean isBoxedType()
NType
String
this is false, but for Integer
this is true.
isBoxedType
in interface NType
public java.lang.String fullName()
NType
fullName
in interface NType
public boolean isPrimitive()
public boolean isSimpleType()
isSimpleType
in interface com.sun.xml.bind.v2.model.core.NonElement<NType,NClass>
public boolean needsValueField()
public com.sun.codemodel.JExpression createConstant(Outline outline, com.sun.xml.xsom.XmlString literal)
TypeUse
For example, to create a constant 1 for xs:int, you'd do:
CBuiltinLeafInfo.INT.createConstant( codeModel, "1", null );
This method is invoked at the backend as a part of the code generation process.
createConstant
in interface TypeUse
TypeUse
(such as when it's a collection)public boolean isCollection()
TypeUse
isCollection
in interface TypeUse
public CAdapter getAdapterUse()
TypeUse
getAdapterUse
in interface TypeUse
public CTypeInfo getInfo()
TypeUse
getInfo
in interface TypeUse
public com.sun.xml.bind.v2.model.core.ID idUse()
TypeUse
ID is a property of a relationship. When a bean Foo has an ID property called 'bar' whose type is String, Foo isn't an ID, String isn't an ID, but this relationship is an ID (in the sense that Foo uses this String as an ID.)
The same thing can be said with IDREF. When Foo refers to Bar by means of IDREF, neither Foo nor Bar is IDREF.
That's why we have this method in TypeUse
.
idUse
in interface TypeUse
public javax.activation.MimeType getExpectedMimeType()
TypeUse
TypeUse
can have an associated MIME type.
getExpectedMimeType
in interface TypeUse
public java.util.Collection<CEnumConstant> getConstants()
getConstants
in interface com.sun.xml.bind.v2.model.core.EnumLeafInfo<NType,NClass>
public com.sun.xml.bind.v2.model.core.NonElement<NType,NClass> getBaseType()
getBaseType
in interface com.sun.xml.bind.v2.model.core.EnumLeafInfo<NType,NClass>
public CCustomizations getCustomizations()
CCustomizable
getCustomizations
in interface CCustomizable
Plugin.getCustomizationURIs()
public com.sun.xml.bind.v2.model.annotation.Locatable getUpstream()
getUpstream
in interface com.sun.xml.bind.v2.model.annotation.Locatable
public com.sun.xml.bind.v2.runtime.Location getLocation()
getLocation
in interface com.sun.xml.bind.v2.model.annotation.Locatable
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |