|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
ObjectAbstractComplexBinding
XSAnyTypeBinding
ComplexSupportXSAnyTypeBinding
public class ComplexSupportXSAnyTypeBinding
A replacement for XSAnyTypeBinding
that adds support for ComplexAttribute
and
related behaviours.
This binding that searches the substitution group of XSD element children to find properties of a complex attribute. This is necessary to support the GML property type pattern, in which a property (a property-type type) contains a property that is a member of a substitution group. gml:AttributeType is the canonical example of the property type pattern.
gml:FeaturePropertyType is an example of the property type pattern that has an explicit binding
FeaturePropertyTypeBinding
, but because an application schema may define more property
types whose names are not known at compile time, a binding like
FeaturePropertyTypeBinding
cannot be written. This class exists to handle these
application-schema-defined property types.
This class supports the encoding of XML complexType with simpleContent through extraction of a simpleContent property, as well as encoding XML attributes stored in the UserData map.
Field Summary |
---|
Fields inherited from interface Binding |
---|
AFTER, BEFORE, OVERRIDE |
Constructor Summary | |
---|---|
ComplexSupportXSAnyTypeBinding(XSDIdRegistry idRegistry)
|
Method Summary | |
---|---|
Element |
encode(Object object,
Document document,
Element value)
Subclasses should ovverride this method if need be, the default implementation returns value. |
List |
getProperties(Object object,
XSDElementDeclaration element)
Subclasses should override this method if need be, the default implementation returns null . |
Object |
getProperty(Object object,
QName name)
Subclasses should override this method if need be, the default implementation returns null . |
Methods inherited from class XSAnyTypeBinding |
---|
getExecutionMode, getTarget, getType, initialize, parse |
Methods inherited from class AbstractComplexBinding |
---|
getProperties, initializeChildContext |
Methods inherited from class Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public ComplexSupportXSAnyTypeBinding(XSDIdRegistry idRegistry)
Method Detail |
---|
public Object getProperty(Object object, QName name) throws Exception
AbstractComplexBinding
null
.
getProperty
in interface ComplexBinding
getProperty
in class AbstractComplexBinding
object
- The object being encoded.name
- The name of the property to obtain.
null
.
Exception
AbstractComplexBinding.getProperty(java.lang.Object,
javax.xml.namespace.QName)
public List getProperties(Object object, XSDElementDeclaration element) throws Exception
AbstractComplexBinding
null
.
Note that this method only needs to be implemented for schema types which are open-ended in which the contents are not specifically specified by the schema.
getProperties
in interface ComplexBinding
getProperties
in class AbstractComplexBinding
object
- the object being encoded.
Exception
AbstractComplexBinding.getProperties(java.lang.Object,
org.eclipse.xsd.XSDElementDeclaration)
public Element encode(Object object, Document document, Element value) throws Exception
AbstractComplexBinding
encode
in interface ComplexBinding
encode
in class AbstractComplexBinding
object
- The object being encoded.document
- The document containing the encoded element.value
- The object as encoded by the parent binding.
null
Exception
AbstractComplexBinding.encode(java.lang.Object, org.w3c.dom.Document,
org.w3c.dom.Element)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |