public interface MapPropertyInfo<T,C> extends PropertyInfo<T,C>
<xs:complexType>
<xs:sequence>
<xs:element name="entry" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="key" type="XXXX"/>
<xs:element name="value" type="YYYY"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
This property is used to represent a default binding of a Map
property.
(Map
properties with adapters will be represented by ElementPropertyInfo
.)
I didn't like the idea of adding such a special-purpose PropertyInfo
to a model.
The alternative was to implicitly assume an adapter, and have internal representation of
the Entry class ready.
But the fact that the key type and the value type changes with the parameterization makes
it very difficult to have such a class (especially inside Annotation Processing, where we can't even generate
classes.)
Modifier and Type | Method and Description |
---|---|
NonElement<T,C> |
getKeyType()
Type of the key of the map.
|
NonElement<T,C> |
getValueType()
Type of the value of the map.
|
QName |
getXmlName()
Gets the wrapper element name.
|
boolean |
isCollectionNillable()
Returns true if this property is nillable
(meaning the absence of the value is treated as nil='true')
|
displayName, getAdapter, getExpectedMimeType, getName, getSchemaType, id, inlineBinaryData, isCollection, kind, parent, ref
hasAnnotation, readAnnotation
QName getXmlName()
boolean isCollectionNillable()
This method is only used when this property is a collection.
NonElement<T,C> getKeyType()
HashMap<K,V>
NonElement<T,C> getValueType()
HashMap<K,V>
Copyright © 2021 JBoss by Red Hat. All rights reserved.