Package org.apache.cxf.aegis.type
Class TypeClassInfo
- java.lang.Object
-
- org.apache.cxf.aegis.type.TypeClassInfo
-
public class TypeClassInfo extends 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
Constructors Constructor Description TypeClassInfo()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Class<? extends AegisType>getAegisTypeClass()Object[]getAnnotations()StringgetDescription()TypegetKeyType()QNamegetMappedName()longgetMaxOccurs()longgetMinOccurs()BooleangetNillable()TypegetType()QNamegetTypeName()Map<String,Type>getTypeVars()TypegetValueType()booleanisFlat()booleannonDefaultAttributes()voidsetAegisTypeClass(Class<? extends AegisType> aegisTypeClass)voidsetAnnotations(Object[] annotations)voidsetDescription(String description)voidsetFlat(boolean flat)voidsetKeyType(Type keyType)voidsetMappedName(QName mappedName)voidsetMaxOccurs(long maxOccurs)voidsetMinOccurs(long minOccurs)voidsetNillable(Boolean nillable)voidsetType(Type type)voidsetType(Type tp, Map<String,Type> vars)voidsetTypeName(QName name)voidsetValueType(Type valueType)StringtoString()
-
-
-
Method Detail
-
nonDefaultAttributes
public boolean nonDefaultAttributes()
-
getDescription
public String getDescription()
-
setDescription
public void setDescription(String description)
-
getAnnotations
public Object[] getAnnotations()
-
setAnnotations
public void setAnnotations(Object[] annotations)
-
getKeyType
public Type getKeyType()
-
setKeyType
public void setKeyType(Type keyType)
-
getType
public Type getType()
-
setType
public void setType(Type type)
-
getTypeName
public QName getTypeName()
-
setTypeName
public void setTypeName(QName name)
-
getMappedName
public QName getMappedName()
-
setMappedName
public void setMappedName(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)
-
getValueType
public Type getValueType()
-
setValueType
public void setValueType(Type valueType)
-
getNillable
public Boolean getNillable()
-
setNillable
public void setNillable(Boolean nillable)
-
-