|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectcom.sun.tools.xjc.model.CPropertyInfo
com.sun.tools.xjc.model.CReferencePropertyInfo
public final class CReferencePropertyInfo
ReferencePropertyInfo for the compiler.
| Field Summary |
|---|
| Fields inherited from class com.sun.tools.xjc.model.CPropertyInfo |
|---|
baseType, defaultValue, inlineBinaryData, javadoc, locator, realization |
| Constructor Summary | |
|---|---|
CReferencePropertyInfo(String name,
boolean collection,
boolean required,
boolean isMixed,
XSComponent source,
CCustomizations customizations,
Locator locator,
boolean dummy,
boolean content,
boolean isMixedExtended)
|
|
| Method Summary | ||
|---|---|---|
|
accept(CPropertyVisitor<V> visitor)
|
|
QName |
collectElementNames(Map<QName,CPropertyInfo> table)
Puts the element names that this property possesses to the map, so that we can find two properties that own the same element name, which is an error. |
|
CAdapter |
getAdapter()
|
|
NClass |
getDOMHandler()
If this property supports the wildcard, returns its DOM handler. |
|
Set<CElement> |
getElements()
Returns the information about the possible elements in this property. |
|
javax.activation.MimeType |
getExpectedMimeType()
Expected MIME type, if any. |
|
QName |
getSchemaType()
The effective value of XmlSchemaType annotation, if any. |
|
WildcardMode |
getWildcard()
If this property supports the wildcard, returns its mode. |
|
QName |
getXmlName()
Deprecated. |
|
ID |
id()
A reference property can never be ID/IDREF because they always point to other element classes. |
|
boolean |
isCollectionNillable()
Returns true if this property is nillable (meaning the absence of the value is treated as nil='true') |
|
boolean |
isCollectionRequired()
Checks if the wrapper element is required. |
|
boolean |
isContent()
|
|
boolean |
isDummy()
|
|
boolean |
isMixed()
Returns true if this property can hold Strings to represent
mixed content model. |
|
boolean |
isMixedExtendedCust()
|
|
boolean |
isOptionalPrimitive()
Returns true if this property needs to represent null just for the purpose of representing an absence of the property. |
|
boolean |
isRequired()
Returns true if this element is mandatory. |
|
boolean |
isUnboxable()
Reference properties refer to elements, and none of the Java primitive type maps to an element. |
|
PropertyKind |
kind()
Gets the kind of this proeprty. |
|
Set<? extends CTypeInfo> |
ref()
List of TypeInfos that this property references. |
|
void |
setWildcard(WildcardMode mode)
|
|
| Methods inherited from class com.sun.tools.xjc.model.CPropertyInfo |
|---|
displayName, getCustomizations, getLocator, getName, getName, getSchemaComponent, hasAnnotation, inlineBinaryData, isCollection, needsExplicitTypeName, parent, readAnnotation, setName |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Methods inherited from interface com.sun.xml.bind.v2.model.core.PropertyInfo |
|---|
displayName, getName, inlineBinaryData, isCollection, parent |
| Methods inherited from interface com.sun.xml.bind.v2.model.annotation.AnnotationSource |
|---|
hasAnnotation, readAnnotation |
| Constructor Detail |
|---|
public CReferencePropertyInfo(String name,
boolean collection,
boolean required,
boolean isMixed,
XSComponent source,
CCustomizations customizations,
Locator locator,
boolean dummy,
boolean content,
boolean isMixedExtended)
| Method Detail |
|---|
public Set<? extends CTypeInfo> ref()
PropertyInfoTypeInfos that this property references.
This allows the caller to traverse the reference graph without
getting into the details of each different property type.
ref in interface PropertyInfo<NType,NClass>ref in interface ReferencePropertyInfo<NType,NClass>ref in class CPropertyInfopublic Set<CElement> getElements()
ReferencePropertyInfoAs of 2004/08/17, the spec only allows you to use different element names when a property is a collection, but I think there's really no reason to limit it there --- if the user wants to use a different tag name for different objects, I don't see why this can be limited to collections.
So this is a generalization of the spec. We always allow a property to have multiple types and use different tag names for it, depending on the actual type.
In most of the cases, this collection only contains 1 item. So the runtime system is encouraged to provide a faster code-path that is optimized toward such cases.
getElements in interface ReferencePropertyInfo<NType,NClass>public boolean isMixed()
ReferencePropertyInfoStrings to represent
mixed content model.
isMixed in interface ReferencePropertyInfo<NType,NClass>public boolean isDummy()
public boolean isContent()
public boolean isMixedExtendedCust()
@Deprecated public QName getXmlName()
getXmlName in interface ReferencePropertyInfo<NType,NClass>public boolean isUnboxable()
isUnboxable in class CPropertyInfopublic boolean isOptionalPrimitive()
CPropertyInfo
isOptionalPrimitive in class CPropertyInfopublic <V> V accept(CPropertyVisitor<V> visitor)
accept in class CPropertyInfopublic CAdapter getAdapter()
getAdapter in interface PropertyInfo<NType,NClass>getAdapter in interface ReferencePropertyInfo<NType,NClass>getAdapter in class CPropertyInfopublic final PropertyKind kind()
PropertyInfo
kind in interface PropertyInfo<NType,NClass>public ID id()
id in interface PropertyInfo<NType,NClass>XmlID,
XmlIDREFpublic WildcardMode getWildcard()
ReferencePropertyInfo
getWildcard in interface ReferencePropertyInfo<NType,NClass>public void setWildcard(WildcardMode mode)
public NClass getDOMHandler()
ReferencePropertyInfo
getDOMHandler in interface ReferencePropertyInfo<NType,NClass>public javax.activation.MimeType getExpectedMimeType()
PropertyInfo
getExpectedMimeType in interface PropertyInfo<NType,NClass>public boolean isCollectionNillable()
ReferencePropertyInfoThis method is only used when this property is a collection.
isCollectionNillable in interface ReferencePropertyInfo<NType,NClass>public boolean isCollectionRequired()
ReferencePropertyInfo
isCollectionRequired in interface ReferencePropertyInfo<NType,NClass>ReferencePropertyInfo.getXmlName()==null.public QName getSchemaType()
PropertyInfoXmlSchemaType annotation, if any.
If the property doesn't have XmlSchemaType annotation,
this method returns null.
Since a type name is a property of a Java type, not a Java property,
A schema type name of a Java type should be primarily obtained
by using NonElement.getTypeName(). This method is to correctly
implement the ugly semantics of XmlSchemaType (namely
when this returns non-null, it overrides the type names of all types
that are in this property.)
getSchemaType in interface PropertyInfo<NType,NClass>public boolean isRequired()
ReferencePropertyInfo
isRequired in interface ReferencePropertyInfo<NType,NClass>public QName collectElementNames(Map<QName,CPropertyInfo> table)
CPropertyInfo
collectElementNames in class CPropertyInfo
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||