Apache CXF API

org.apache.cxf.aegis.type
Class TypeClassInfo

java.lang.Object
  extended by org.apache.cxf.aegis.type.TypeClassInfo

public class TypeClassInfo
extends java.lang.Object

Object to carry information for an Aegis type, such as that from an XML mapping file. Note that this class has a misleading name. It is used both for type information that corresponds to a type, and also for parameters of methods and elements of beans. When describing a top-level type, minOccurs and maxOccurs are not meaningful. Aegis does not have a very clear model of a 'type', in the sense of an AegisType object corresponding to some particular XML Schema type, in isolation from the mapping system. Historically, Aegis talked about Java types as Class. However, we want to be able to keep track, distinctly, of un-erased generics. That requires java.lang.reflect.Type. Nillable is only used for parameters. It might be that the code could be deconfused by using the nillable property in here for the non-parameters cases that look at minOccurs and maxOccurs. Historically, the code for dealing with nillable was very confused, and so the support here is a bit ginger, until someone figures out how to sort things out. Thus the three-valued support instead of a plain boolean.


Constructor Summary
TypeClassInfo()
           
 
Method Summary
 java.lang.Class<? extends AegisType> getAegisTypeClass()
           
 java.lang.Object[] getAnnotations()
           
 java.lang.String getDescription()
           
 java.lang.reflect.Type getKeyType()
           
 javax.xml.namespace.QName getMappedName()
           
 long getMaxOccurs()
           
 long getMinOccurs()
           
 java.lang.Boolean getNillable()
           
 java.lang.reflect.Type getType()
           
 javax.xml.namespace.QName getTypeName()
           
 java.lang.reflect.Type getValueType()
           
 boolean isFlat()
           
 boolean nonDefaultAttributes()
           
 void setAegisTypeClass(java.lang.Class<? extends AegisType> aegisTypeClass)
           
 void setAnnotations(java.lang.Object[] annotations)
           
 void setDescription(java.lang.String description)
           
 void setFlat(boolean flat)
           
 void setKeyType(java.lang.reflect.Type keyType)
           
 void setMappedName(javax.xml.namespace.QName mappedName)
           
 void setMaxOccurs(long maxOccurs)
           
 void setMinOccurs(long minOccurs)
           
 void setNillable(java.lang.Boolean nillable)
           
 void setType(java.lang.reflect.Type type)
           
 void setTypeName(javax.xml.namespace.QName name)
           
 void setValueType(java.lang.reflect.Type valueType)
           
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

TypeClassInfo

public TypeClassInfo()
Method Detail

nonDefaultAttributes

public boolean nonDefaultAttributes()

getDescription

public java.lang.String getDescription()

setDescription

public void setDescription(java.lang.String description)

getAnnotations

public java.lang.Object[] getAnnotations()

setAnnotations

public void setAnnotations(java.lang.Object[] annotations)

getKeyType

public java.lang.reflect.Type getKeyType()

setKeyType

public void setKeyType(java.lang.reflect.Type keyType)

getType

public java.lang.reflect.Type getType()

setType

public void setType(java.lang.reflect.Type type)

getTypeName

public javax.xml.namespace.QName getTypeName()

setTypeName

public void setTypeName(javax.xml.namespace.QName name)

getAegisTypeClass

public java.lang.Class<? extends AegisType> getAegisTypeClass()

setAegisTypeClass

public void setAegisTypeClass(java.lang.Class<? extends AegisType> aegisTypeClass)

getMappedName

public javax.xml.namespace.QName getMappedName()

setMappedName

public void setMappedName(javax.xml.namespace.QName mappedName)

getMaxOccurs

public long getMaxOccurs()

setMaxOccurs

public void setMaxOccurs(long maxOccurs)

getMinOccurs

public long getMinOccurs()

setMinOccurs

public void setMinOccurs(long minOccurs)

isFlat

public boolean isFlat()

setFlat

public void setFlat(boolean flat)

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

getValueType

public java.lang.reflect.Type getValueType()

setValueType

public void setValueType(java.lang.reflect.Type valueType)

getNillable

public java.lang.Boolean getNillable()

setNillable

public void setNillable(java.lang.Boolean nillable)

Apache CXF API

Apache CXF