|
||||||||||
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(java.lang.String name,
boolean collection,
boolean required,
boolean isMixed,
com.sun.xml.xsom.XSComponent source,
CCustomizations customizations,
org.xml.sax.Locator locator,
boolean dummy,
boolean content,
boolean isMixedExtended)
|
Method Summary | ||
---|---|---|
|
accept(CPropertyVisitor<V> visitor)
|
|
javax.xml.namespace.QName |
collectElementNames(java.util.Map<javax.xml.namespace.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. |
|
java.util.Set<CElement> |
getElements()
Returns the information about the possible elements in this property. |
|
javax.activation.MimeType |
getExpectedMimeType()
Expected MIME type, if any. |
|
javax.xml.namespace.QName |
getSchemaType()
The effective value of XmlSchemaType annotation, if any. |
|
WildcardMode |
getWildcard()
If this property supports the wildcard, returns its mode. |
|
javax.xml.namespace.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 String s 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. |
|
java.util.Set<? extends CTypeInfo> |
ref()
List of TypeInfo s 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(java.lang.String name, boolean collection, boolean required, boolean isMixed, com.sun.xml.xsom.XSComponent source, CCustomizations customizations, org.xml.sax.Locator locator, boolean dummy, boolean content, boolean isMixedExtended)
Method Detail |
---|
public java.util.Set<? extends CTypeInfo> ref()
PropertyInfo
TypeInfo
s 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 CPropertyInfo
public java.util.Set<CElement> getElements()
ReferencePropertyInfo
As 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()
ReferencePropertyInfo
String
s to represent
mixed content model.
isMixed
in interface ReferencePropertyInfo<NType,NClass>
public boolean isDummy()
public boolean isContent()
public boolean isMixedExtendedCust()
@Deprecated public javax.xml.namespace.QName getXmlName()
getXmlName
in interface ReferencePropertyInfo<NType,NClass>
public boolean isUnboxable()
isUnboxable
in class CPropertyInfo
public boolean isOptionalPrimitive()
CPropertyInfo
isOptionalPrimitive
in class CPropertyInfo
public <V> V accept(CPropertyVisitor<V> visitor)
accept
in class CPropertyInfo
public CAdapter getAdapter()
getAdapter
in interface PropertyInfo<NType,NClass>
getAdapter
in interface ReferencePropertyInfo<NType,NClass>
getAdapter
in class CPropertyInfo
public final PropertyKind kind()
PropertyInfo
kind
in interface PropertyInfo<NType,NClass>
public ID id()
id
in interface PropertyInfo<NType,NClass>
XmlID
,
XmlIDREF
public 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()
ReferencePropertyInfo
This 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 javax.xml.namespace.QName getSchemaType()
PropertyInfo
XmlSchemaType
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 javax.xml.namespace.QName collectElementNames(java.util.Map<javax.xml.namespace.QName,CPropertyInfo> table)
CPropertyInfo
collectElementNames
in class CPropertyInfo
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |