com.sun.tools.xjc.model
Class CValuePropertyInfo

java.lang.Object
  extended by com.sun.tools.xjc.model.CPropertyInfo
      extended by com.sun.tools.xjc.model.CValuePropertyInfo
All Implemented Interfaces:
CCustomizable, AnnotationSource, NonElementRef<NType,NClass>, PropertyInfo<NType,NClass>, ValuePropertyInfo<NType,NClass>

public final class CValuePropertyInfo
extends CPropertyInfo
implements ValuePropertyInfo<NType,NClass>

ValuePropertyInfo implementation for XJC.


Field Summary
protected  TypeUse type
           
 
Fields inherited from class com.sun.tools.xjc.model.CPropertyInfo
baseType, defaultValue, inlineBinaryData, javadoc, locator, realization
 
Constructor Summary
CValuePropertyInfo(java.lang.String name, com.sun.xml.xsom.XSComponent source, CCustomizations customizations, org.xml.sax.Locator locator, TypeUse type, javax.xml.namespace.QName typeName)
           
 
Method Summary
<V> V
accept(CPropertyVisitor<V> visitor)
           
 CAdapter getAdapter()
           
 javax.activation.MimeType getExpectedMimeType()
          Expected MIME type, if any.
 javax.xml.namespace.QName getSchemaType()
          The effective value of XmlSchemaType annotation, if any.
 com.sun.tools.xjc.model.CSingleTypePropertyInfo getSource()
           
 CNonElement getTarget()
           
 ID id()
          Returns the IDness of the value of this element.
 PropertyKind kind()
          Gets the kind of this proeprty.
 java.util.List<? extends CTypeInfo> ref()
          List of TypeInfos that this property references.
 
Methods inherited from class com.sun.tools.xjc.model.CPropertyInfo
collectElementNames, displayName, getCustomizations, getLocator, getName, getName, getSchemaComponent, hasAnnotation, inlineBinaryData, isCollection, isOptionalPrimitive, isUnboxable, 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.ValuePropertyInfo
getAdapter
 
Methods inherited from interface com.sun.xml.bind.v2.model.core.PropertyInfo
displayName, getExpectedMimeType, getName, getSchemaType, id, inlineBinaryData, isCollection, parent, ref
 
Methods inherited from interface com.sun.xml.bind.v2.model.annotation.AnnotationSource
hasAnnotation, readAnnotation
 
Methods inherited from interface com.sun.xml.bind.v2.model.core.NonElementRef
getSource, getTarget
 

Field Detail

type

protected final TypeUse type
Constructor Detail

CValuePropertyInfo

public CValuePropertyInfo(java.lang.String name,
                          com.sun.xml.xsom.XSComponent source,
                          CCustomizations customizations,
                          org.xml.sax.Locator locator,
                          TypeUse type,
                          javax.xml.namespace.QName typeName)
Method Detail

kind

public final PropertyKind kind()
Description copied from interface: PropertyInfo
Gets the kind of this proeprty.

Specified by:
kind in interface PropertyInfo<NType,NClass>
Returns:
always non-null.

accept

public <V> V accept(CPropertyVisitor<V> visitor)
Specified by:
accept in class CPropertyInfo

getSchemaType

public javax.xml.namespace.QName getSchemaType()
Description copied from interface: PropertyInfo
The effective value of 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.)


id

public final ID id()
Description copied from interface: PropertyInfo
Returns the IDness of the value of this element.

Returns:
always non-null
See Also:
XmlID, XmlIDREF

getExpectedMimeType

public final javax.activation.MimeType getExpectedMimeType()
Description copied from interface: PropertyInfo
Expected MIME type, if any.


ref

public final java.util.List<? extends CTypeInfo> ref()
Description copied from interface: PropertyInfo
List of TypeInfos that this property references. This allows the caller to traverse the reference graph without getting into the details of each different property type.

Specified by:
ref in interface PropertyInfo<NType,NClass>
Specified by:
ref in class CPropertyInfo
Returns:
non-null read-only collection.

getTarget

public final CNonElement getTarget()

getAdapter

public final CAdapter getAdapter()
Specified by:
getAdapter in interface PropertyInfo<NType,NClass>
Specified by:
getAdapter in class CPropertyInfo
Returns:
null if the property is not adapted.

getSource

public final com.sun.tools.xjc.model.CSingleTypePropertyInfo getSource()