org.apache.cxf.aegis.type.encoded
Class StructType
java.lang.Object
org.apache.cxf.aegis.type.AegisType
org.apache.cxf.aegis.type.basic.BeanType
org.apache.cxf.aegis.type.encoded.StructType
public class StructType
- extends BeanType
StructType is a small extension of the BeanType which can properly read and write SOAP encoded structs. The
modifications are:
- Nested elements MUST be unqualified
- Nested elements MAY contain a SOAP ref attribute instead of an inline value
- Struct MAY contain a SOAP id attribute
When writting, the class will always write the struct in the following canonical format:
- Struct will contain a SOAP id
- Nested structs will be written as SOAP references (with SoapRefType)
Method Summary |
protected boolean |
alwaysAllowNillables()
|
protected BeanTypeInfo |
getBeanTypeInfoWithProperty(QName name)
Gets the BeanTypeInfo using an unqualified name. |
protected AegisType |
getElementType(QName name,
BeanTypeInfo beanTypeInfo,
MessageReader reader,
Context context)
Returns a SoapRefType wrapping the actual type. |
protected void |
writeElement(QName name,
Object value,
AegisType type,
MessageWriter writer,
Context context)
Writes a nested element with an unqualified name. |
protected void |
writeProperty(QName name,
Object object,
Object property,
Class<?> impl,
BeanTypeInfo inf)
Adds special handeling for SoapRefs |
Methods inherited from class org.apache.cxf.aegis.type.basic.BeanType |
createFromFault, createTypeInfo, getDependencies, getMinOccurs, getSuperType, getTypeInfo, hasMinOccurs, isComplex, readObject, readProperty, setTypeClass, setTypeMapping, toString, writeObject, writeSchema |
Methods inherited from class org.apache.cxf.aegis.type.AegisType |
addToSchemaElement, equals, getMaxOccurs, getSchemaType, getType, getTypeClass, getTypeMapping, hashCode, hasMaxOccurs, isAbstract, isFlatArray, isNillable, isWriteOuter, setAbstract, setFlatArray, setNillable, setSchemaType, setWriteOuter, usesUtilityTypes, usesXmime |
StructType
public StructType()
StructType
public StructType(BeanTypeInfo info)
alwaysAllowNillables
protected boolean alwaysAllowNillables()
- Overrides:
alwaysAllowNillables
in class BeanType
getBeanTypeInfoWithProperty
protected BeanTypeInfo getBeanTypeInfoWithProperty(QName name)
- Gets the BeanTypeInfo using an unqualified name.
- Overrides:
getBeanTypeInfoWithProperty
in class BeanType
- Parameters:
name
- the unqualified name of the element
- Returns:
- the BeanTypeInfo containing a property with the specified unqualified name
getElementType
protected AegisType getElementType(QName name,
BeanTypeInfo beanTypeInfo,
MessageReader reader,
Context context)
- Returns a SoapRefType wrapping the actual type.
- Overrides:
getElementType
in class BeanType
writeProperty
protected void writeProperty(QName name,
Object object,
Object property,
Class<?> impl,
BeanTypeInfo inf)
throws DatabindingException
- Adds special handeling for SoapRefs
- Overrides:
writeProperty
in class BeanType
- Throws:
DatabindingException
writeElement
protected void writeElement(QName name,
Object value,
AegisType type,
MessageWriter writer,
Context context)
- Writes a nested element with an unqualified name.
- Overrides:
writeElement
in class BeanType
Apache CXF