Class 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 Detail

      • TypeClassInfo

        public TypeClassInfo()
    • 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)
      • getAegisTypeClass

        public Class<? extends AegisType> getAegisTypeClass()
      • setAegisTypeClass

        public void setAegisTypeClass​(Class<? extends AegisType> aegisTypeClass)
      • 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)