Package org.geotools.xsd
Class AbstractComplexBinding
- Object
-
- AbstractComplexBinding
-
- All Implemented Interfaces:
Binding
,ComplexBinding
- Direct Known Subclasses:
_axisDescriptionBinding
,_ContentMetadataBinding
,_CoverageDescriptionBinding
,_DescribeCoverageBinding
,_Filter_CapabilitiesBinding
,_Filter_CapabilitiesBinding
,_GetCapabilitiesBinding
,_GetCoverageBinding
,_keywordsBinding
,_rangeSetBinding
,AbstractComplexEMFBinding
,AbstractDescriptionBaseTypeBinding
,AbstractDescriptionTypeBinding
,AbstractFeatureCollectionTypeBinding
,AbstractFeatureTypeBinding
,AbstractGeometricPrimitiveTypeBinding
,AbstractGeometryBaseTypeBinding
,AbstractGeometryTypeBinding
,AbstractGeometryTypeBinding
,AbstractGMLTypeBinding
,AbstractMetaDataTypeBinding
,AbstractRingPropertyTypeBinding
,AbstractRingPropertyTypeBinding
,AbstractRingTypeBinding
,AbstractRingTypeBinding
,AbstractSurfaceTypeBinding
,AbstractSurfaceTypeBinding
,AddressTypeBinding
,AfterBinding
,AnyInteractsBinding
,ArcStringTypeBinding
,ArcTypeBinding
,Arithmetic_OperatorsTypeBinding
,AxisDescriptionType_valuesBinding
,AxisDescriptionTypeBinding
,BaseSymbolizerBinding
,BboxtypeBinding
,BeforeBinding
,BeginsBinding
,BegunByBinding
,BinaryComparisonOpTypeBinding
,BinarySpatialOpTypeBinding
,BinaryTemporalOpTypeBinding
,BoundaryTypeBinding
,BoundingShapeTypeBinding
,BoundingShapeTypeBinding
,CategorizeBinding
,ChangeCaseBinding
,CircleTypeBinding
,CodeListTypeBinding
,CodeTypeBinding
,ColorMapBinding
,ColorReplacementBinding
,ColorStyleTypeBinding
,Comparison_OperatorsTypeBinding
,ComparisonOperatorsTypeBinding
,ComplexDataTypeBinding
,ConcatenateBinding
,ContactTypeBinding
,ContainerTypeBinding
,CoverageOfferingBriefTypeBinding
,CoverageOfferingTypeBinding
,CoveragetypeBinding
,CurveArrayPropertyTypeBinding
,CurveSegmentArrayPropertyTypeBinding
,CurveTypeBinding
,DataTypeBinding
,DCPTypeType_HTTPBinding
,DCPTypeTypeBinding
,DescriptionBinding
,DirectPositionListTypeBinding
,DirectPositionTypeBinding
,DirectPositionTypeBinding
,DistanceBufferTypeBinding
,DocumentTypeBinding
,DomainSetTypeBinding
,DomainSubsetTypeBinding
,DuringBinding
,EndedByBinding
,EndsBinding
,EnvelopePropertyTypeBinding
,EnvelopeTypeBinding
,EnvelopeTypeBinding
,EnvelopeWithTimePeriodTypeBinding
,ExtendedDataTypeBinding
,ExtensionTypeBinding
,FeatureArrayPropertyTypeBinding
,FeaturePropertyTypeBinding
,FeatureTypeBinding
,FilterTypeBinding
,FolderBinding
,FolderTypeBinding
,FormatDateBinding
,FormatNumberBinding
,Function_NamesTypeBinding
,Function_NameTypeBinding
,FunctionsTypeBinding
,FunctionTypeBinding
,GeometryOperandsTypeBinding
,GeometryPropertyTypeBindingBase
,GeometryTypeBinding
,GeopkgtypeBinding
,GMLAbstractFeatureCollectionBaseTypeBinding
,GMLAbstractFeatureCollectionTypeBinding
,GMLAbstractFeatureTypeBinding
,GMLAbstractGeometryCollectionBaseTypeBinding
,GMLAbstractGeometryTypeBinding
,GMLBoundingShapeTypeBinding
,GMLBoxTypeBinding
,GMLCoordinatesTypeBinding
,GMLCoordTypeBinding
,GMLFeatureAssociationTypeBinding
,GMLGeometryAssociationTypeBinding
,GMLGeometryCollectionTypeBinding
,GMLGeometryPropertyTypeBinding
,GMLLinearRingMemberTypeBinding
,GMLLinearRingTypeBinding
,GMLLineStringMemberTypeBinding
,GMLLineStringPropertyTypeBinding
,GMLLineStringTypeBinding
,GMLMultiGeometryPropertyTypeBinding
,GMLMultiLineStringPropertyTypeBinding
,GMLMultiLineStringTypeBinding
,GMLMultiPointPropertyTypeBinding
,GMLMultiPointTypeBinding
,GMLMultiPolygonPropertyTypeBinding
,GMLMultiPolygonTypeBinding
,GmlObjectIdTypeBinding
,GMLPointMemberTypeBinding
,GMLPointPropertyTypeBinding
,GMLPointTypeBinding
,GMLPolygonMemberTypeBinding
,GMLPolygonPropertyTypeBinding
,GMLPolygonTypeBinding
,GridEnvelopeTypeBinding
,GridLimitsTypeBinding
,Gridsettype_gridsBinding
,GridsettypeBinding
,GridtypeBinding
,GridTypeBinding
,HistogramBinding
,Id_CapabilitiesTypeBinding
,InlineContentBinding
,InterpolateBinding
,InterpolationPointBinding
,IntervalTypeBinding
,KmlTypeBinding
,LabelStyleTypeBinding
,LanguagesBinding
,LatLonBoxTypeBinding
,LayertypeBinding
,LinearRingPropertyTypeBinding
,LinearRingTypeBinding
,LinearRingTypeBinding
,LinearRingTypeBinding
,LineStringSegmentTypeBinding
,LineStringTypeBinding
,LineStringTypeBinding
,LineStyleTypeBinding
,LocationPropertyTypeBinding
,LocationTypeBinding
,LonLatEnvelopeBaseTypeBinding
,LonLatEnvelopeTypeBinding
,LookAtTypeBinding
,LowerBoundaryTypeBinding
,MapItemBinding
,MeasureTypeBinding
,MeasureTypeBinding
,MeetsBinding
,MetadataAssociationTypeBinding
,MetadataLinkTypeBinding
,MetaDataPropertyTypeBinding
,MetadataTypeBinding
,MetByBinding
,MultiCurveTypeBinding
,MultiGeometryPropertyTypeBinding
,MultiGeometryTypeBinding
,MultiGeometryTypeBinding
,MultiLineStringTypeBinding
,MultiPointTypeBinding
,MultiPolygonTypeBinding
,MultiSurfaceTypeBinding
,NameBinding
,ObjectTypeBinding
,OGCAddBinding
,OGCAndBinding
,OGCBBOXTypeBinding
,OGCBeyondBinding
,OGCBinaryComparisonOpTypeBinding
,OGCBinaryLogicOpTypeBinding
,OGCBinaryOperatorTypeBinding
,OGCBinarySpatialOpTypeBinding
,OGCComparisonOpsTypeBinding
,OGCContainsBinding
,OGCCrossesBinding
,OGCDisjointBinding
,OGCDistanceBufferTypeBinding
,OGCDistanceTypeBinding
,OGCDivBinding
,OGCDWithinBinding
,OGCEqualsBinding
,OGCExpressionTypeBinding
,OGCFeatureIdTypeBinding
,OGCFilterTypeBinding
,OGCFunctionTypeBinding
,OGCIntersectsBinding
,OGCLiteralTypeBinding
,OGCLogicOpsTypeBinding
,OGCLowerBoundaryTypeBinding
,OGCMulBinding
,OGCNotBinding
,OGCOrBinding
,OGCOverlapsBinding
,OGCPropertyIsBetweenTypeBinding
,OGCPropertyIsEqualToBinding
,OGCPropertyIsGreaterThanBinding
,OGCPropertyIsGreaterThanOrEqualToBinding
,OGCPropertyIsLessThanBinding
,OGCPropertyIsLessThanOrEqualToBinding
,OGCPropertyIsLikeTypeBinding
,OGCPropertyIsNotEqualToBinding
,OGCPropertyIsNullTypeBinding
,OGCPropertyNameTypeBinding
,OGCSpatialOpsTypeBinding
,OGCSubBinding
,OGCTouchesBinding
,OGCUpperBoundaryTypeBinding
,OGCWithinBinding
,OnlineResourceTypeBinding
,OutputTypeBinding
,OverlappedByBinding
,OverviewBinding
,ParameterBinding
,PlacemarkTypeBinding
,PointArrayPropertyTypeBinding
,PointTypeBinding
,PointTypeBinding
,PointTypeBinding
,PolygonPatchTypeBinding
,PolygonTypeBinding
,PolygonTypeBinding
,PolygonTypeBinding
,PolyStyleTypeBinding
,RangeSetTypeBinding
,RangeSubsetType_axisSubsetBinding
,RangeSubsetTypeBinding
,RecodeBinding
,RectifiedGridTypeBinding
,ReferenceTypeBinding
,ReferenceTypeBinding
,RegionTypeBinding
,ResourceIdTypeBinding
,ResponsiblePartyTypeBinding
,RingTypeBinding
,Scalar_CapabilitiesTypeBinding
,SchemaDataTypeBinding
,SchemaTypeBinding
,ServiceTypeBinding
,SLDAnchorPointBinding
,SLDBlueChannelBinding
,SLDChannelSelectionBinding
,SLDColorMapBinding
,SLDColorMapEntryBinding
,SLDContrastEnhancementBinding
,SLDCssParameterBinding
,SLDDisplacementBinding
,SLDExtentBinding
,SLDExternalGraphicBinding
,SLDFeatureTypeConstraintBinding
,SLDFeatureTypeStyleBinding
,SLDFillBinding
,SLDFontBinding
,SLDGeometryBinding
,SLDGraphicBinding
,SLDGraphicFillBinding
,SLDGraphicStrokeBinding
,SLDGrayChannelBinding
,SLDGreenChannelBinding
,SLDHaloBinding
,SLDHistogramBinding
,SLDImageOutlineBinding
,SLDInternationalStringBinding
,SLDLabelPlacementBinding
,SLDLayerFeatureConstraintsBinding
,SLDLegendGraphicBinding
,SLDLinePlacementBinding
,SLDLineSymbolizerBinding
,SLDMarkBinding
,SLDNamedLayerBinding
,SLDNamedStyleBinding
,SLDNormalizeBinding
,SLDOnlineResourceBinding
,SLDOverlapBehaviorBinding
,SLDParameterValueTypeBinding
,SLDPerpendicularOffsetBinding
,SLDPointPlacementBinding
,SLDPointSymbolizerBinding
,SLDPolygonSymbolizerBinding
,SLDRasterSymbolizerBinding
,SLDRedChannelBinding
,SLDRemoteOWSBinding
,SLDRuleBinding
,SLDSelectedChannelTypeBinding
,SLDShadedReliefBinding
,SLDStrokeBinding
,SLDStyledLayerDescriptorBinding
,SLDSymbolizerBinding
,SLDSymbolizerTypeBinding
,SLDTextSymbolizerBinding
,SLDUserLayerBinding
,SLDUserStyleBinding
,SLDVendorOptionBinding
,SortByTypeBinding
,SortPropertyTypeBinding
,Spatial_CapabilitiesTypeBinding
,Spatial_CapabilitiesTypeBinding
,Spatial_OperatorsTypeBinding
,SpatialDomainTypeBinding
,SpatialOperatorsTypeBinding
,SpatialOperatorTypeBinding
,SpatialSubsetTypeBinding
,StringLengthBinding
,StringOrRefTypeBinding
,StringPositionBinding
,StyleTypeBinding
,SubstringBinding
,SupportedCRSsTypeBinding
,SupportedFormatsTypeBinding
,SupportedInterpolationsTypeBinding
,SurfaceArrayPropertyTypeBinding
,SurfacePatchArrayPropertyTypeBinding
,SurfaceTypeBinding
,SurfaceTypeBinding
,SymbolizerTypeBinding
,TContainsBinding
,TelephoneTypeBinding
,TEqualsBinding
,TimeInstantPropertyTypeBinding
,TimeInstantTypeBinding
,TimePeriodTypeBinding
,TimePeriodTypeBinding
,TimePeriodTypeBinding
,TimePositionTypeBinding
,TimePositionTypeBinding
,TimePositionTypeBinding
,TimeSequenceTypeBinding
,TimeSequenceTypeBinding
,TOverlapsBinding
,TrimBinding
,TupleTypeBinding
,TypedLiteralTypeBinding
,UpperBoundaryTypeBinding
,ValueEnumBaseTypeBinding
,ValueEnumTypeBinding
,ValueRangeTypeBinding
,VectorTypeBinding
,WCS_CapabilitiesTypeBinding
,WCSCapabilityType_ExceptionBinding
,WCSCapabilityType_RequestBinding
,WCSCapabilityType_VendorSpecificCapabilitiesBinding
,WCSCapabilityTypeBinding
,XSAllBinding
,XSAnnotatedBinding
,XSAnyTypeBinding
,XSAttributeBinding
,XSAttributeGroupBinding
,XSAttributeGroupRefBinding
,XSComplexRestrictionTypeBinding
,XSComplexTypeBinding
,XSElementBinding
,XSExplicitGroupBinding
,XSExtensionTypeBinding
,XSFacetBinding
,XSGroupBinding
,XSGroupRefBinding
,XSKeybaseBinding
,XSLocalComplexTypeBinding
,XSLocalElementBinding
,XSLocalSimpleTypeBinding
,XSNamedAttributeGroupBinding
,XSNamedGroupBinding
,XSNarrowMaxMinBinding
,XSNoFixedFacetBinding
,XSNumFacetBinding
,XSOpenAttrsBinding
,XSRealGroupBinding
,XSRestrictionTypeBinding
,XSSimpleExplicitGroupBinding
,XSSimpleExtensionTypeBinding
,XSSimpleRestrictionTypeBinding
,XSSimpleTypeBinding
,XSTopLevelAttributeBinding
,XSTopLevelComplexTypeBinding
,XSTopLevelElementBinding
,XSTopLevelSimpleTypeBinding
,XSWildcardBinding
public abstract class AbstractComplexBinding extends Object implements ComplexBinding
Base class for complex bindings.- Author:
- Justin Deoliveira, The Open Planning Project, jdeolive@openplans.org
-
-
Constructor Summary
Constructors Constructor Description AbstractComplexBinding()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Element
encode(Object object, Document document, Element value)
Subclasses should override this method if need be, the default implementation returns value.int
getExecutionMode()
This implementation returnsBinding.OVERRIDE
.List<Object[]>
getProperties(Object object, XSDElementDeclaration element)
Subclasses should override this method if need be, the default implementation returnsnull
.Object
getProperty(Object object, QName name)
Subclasses should override this method if need be, the default implementation returnsnull
.void
initialize(ElementInstance instance, Node node, MutablePicoContainer context)
Does nothing, subclasses should override this method.void
initializeChildContext(ElementInstance childInstance, Node node, MutablePicoContainer context)
Does nothing, subclasses should override this method.Object
parse(ElementInstance instance, Node node, Object value)
Subclasses should override this method, the default implementation returnnull
.
-
-
-
Method Detail
-
initializeChildContext
public void initializeChildContext(ElementInstance childInstance, Node node, MutablePicoContainer context)
Does nothing, subclasses should override this method.- Specified by:
initializeChildContext
in interfaceComplexBinding
- Parameters:
childInstance
- The child element instancenode
- The parse node for the parent element.context
- the context in which the child element will be parsed.
-
initialize
public void initialize(ElementInstance instance, Node node, MutablePicoContainer context)
Does nothing, subclasses should override this method.- Specified by:
initialize
in interfaceComplexBinding
- Parameters:
instance
- The element being parsed.node
- The node in the parse tree representing the element being parsed. It is important to note that at the time this method is called the node contains no child element nodes, only child attribute nodes.context
- The container to be used as context for child binding.
-
getExecutionMode
public int getExecutionMode()
This implementation returnsBinding.OVERRIDE
.Subclasses should override to change this behaviour.
- Specified by:
getExecutionMode
in interfaceBinding
- Returns:
- The execution mode of the binding, one of the constants AFTER, BEFORE, or OVERRIDE.
- See Also:
Binding.AFTER
,Binding.BEFORE
,Binding.OVERRIDE
-
parse
public Object parse(ElementInstance instance, Node node, Object value) throws Exception
Subclasses should override this method, the default implementation returnnull
.- Specified by:
parse
in interfaceComplexBinding
- Parameters:
instance
- The element being parsed.node
- The node in the parse tree representing the element being parsed.value
- The result of the parse from another strategy in the type hierarchy. Could be null if this is the first strategy being executed.- Returns:
- The parsed object, or null if the component could not be parsed.
- Throws:
Exception
- Strategy objects should not attempt to handle any exceptions.
-
encode
public Element encode(Object object, Document document, Element value) throws Exception
Subclasses should override this method if need be, the default implementation returns value.- Specified by:
encode
in interfaceComplexBinding
- Parameters:
object
- The object being encoded.document
- The document containing the encoded element.value
- The object as encoded by the parent binding.- Returns:
- The element for the objcet being encoded, or
null
- Throws:
Exception
-
getProperty
public Object getProperty(Object object, QName name) throws Exception
Subclasses should override this method if need be, the default implementation returnsnull
.- Specified by:
getProperty
in interfaceComplexBinding
- Parameters:
object
- The object being encoded.name
- The name of the property to obtain.- Returns:
- The value of the property, or
null
. - Throws:
Exception
- See Also:
ComplexBinding.getProperty(Object, QName)
-
getProperties
public List<Object[]> getProperties(Object object, XSDElementDeclaration element) throws Exception
Subclasses should override this method if need be, the default implementation returnsnull
.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.
- Specified by:
getProperties
in interfaceComplexBinding
- Parameters:
object
- the object being encoded.- Returns:
- A list of the properties for the object.
- Throws:
Exception
-
-