Interface RuntimeElementPropertyInfo

    • Method Detail

      • getTypes

        List<? extends RuntimeTypeRef> getTypes()
        Description copied from interface: ElementPropertyInfo
        Returns the information about the types allowed in this property.

        In a simple case like the following, an element property only has one TypeRef that points to String and tag name "foo".

         @XmlElement
         String abc;
         

        However, in a general case an element property can be heterogeneous, meaning you can put different types in it, each with a different tag name (and a few other settings.)

        
         // list can contain String or Integer.
         @XmlElements({
           @XmlElement(name="a",type=String.class),
           @XmlElement(name="b",type=Integer.class),
         })
         List<Object> abc;
         

        In this case this method returns a list of two TypeRefs.

        Specified by:
        getTypes in interface ElementPropertyInfo<Type,​Class>
        Returns:
        Always non-null. Contains at least one entry. If ElementPropertyInfo.isValueList()==true, there's always exactly one type.