Package org.geotools.gml3.bindings
Class LineStringSegmentTypeBinding
- Object
-
- AbstractComplexBinding
-
- LineStringSegmentTypeBinding
-
- All Implemented Interfaces:
Binding
,ComplexBinding
public class LineStringSegmentTypeBinding extends AbstractComplexBinding
Binding object for the type http://www.opengis.net/gml:LineStringSegmentType.<complexType name="LineStringSegmentType"> <annotation> <documentation>A LineStringSegment is a curve segment that is defined by two or more coordinate tuples, with linear interpolation between them. Note: LineStringSegment implements GM_LineString of ISO 19107.</documentation> </annotation> <complexContent> <extension base="gml:AbstractCurveSegmentType"> <sequence> <choice> <annotation> <documentation>GML supports two different ways to specify the control points of a curve segment. 1. A sequence of "pos" (DirectPositionType) or "pointProperty" (PointPropertyType) elements. "pos" elements are control points that are only part of this curve segment, "pointProperty" elements contain a point that may be referenced from other geometry elements or reference another point defined outside of this curve segment (reuse of existing points). 2. The "posList" element allows for a compact way to specifiy the coordinates of the control points, if all control points are in the same coordinate reference systems and belong to this curve segment only. The number of direct positions in the list must be at least two.</documentation> </annotation> <choice maxOccurs="unbounded" minOccurs="2"> <element ref="gml:pos"/> <element ref="gml:pointProperty"/> <element ref="gml:pointRep"> <annotation> <documentation>Deprecated with GML version 3.1.0. Use "pointProperty" instead. Included for backwards compatibility with GML 3.0.0.</documentation> </annotation> </element> </choice> <element ref="gml:posList"/> <element ref="gml:coordinates"> <annotation> <documentation>Deprecated with GML version 3.1.0. Use "posList" instead.</documentation> </annotation> </element> </choice> </sequence> <attribute fixed="linear" name="interpolation" type="gml:CurveInterpolationType"> <annotation> <documentation>The attribute "interpolation" specifies the curve interpolation mechanism used for this segment. This mechanism uses the control points and control parameters to determine the position of this curve segment. For a LineStringSegment the interpolation is fixed as "linear".</documentation> </annotation> </attribute> </extension> </complexContent> </complexType>
-
-
Constructor Summary
Constructors Constructor Description LineStringSegmentTypeBinding(GeometryFactory gf, CoordinateSequenceFactory csf)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Object
getProperty(Object object, QName name)
Subclasses should override this method if need be, the default implementation returnsnull
.QName
getTarget()
Class
getType()
Object
parse(ElementInstance instance, Node node, Object value)
-
Methods inherited from class AbstractComplexBinding
encode, getExecutionMode, getProperties, initialize, initializeChildContext
-
-
-
-
Constructor Detail
-
LineStringSegmentTypeBinding
public LineStringSegmentTypeBinding(GeometryFactory gf, CoordinateSequenceFactory csf)
-
-
Method Detail
-
getTarget
public QName getTarget()
- Returns:
- The qualified name of the target for the binding.
-
getType
public Class getType()
- Returns:
- The java type this binding maps to.
-
parse
public Object parse(ElementInstance instance, Node node, Object value) throws Exception
- Specified by:
parse
in interfaceComplexBinding
- Overrides:
parse
in classAbstractComplexBinding
- 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.
-
getProperty
public Object getProperty(Object object, QName name) throws Exception
Description copied from class:AbstractComplexBinding
Subclasses should override this method if need be, the default implementation returnsnull
.- Specified by:
getProperty
in interfaceComplexBinding
- Overrides:
getProperty
in classAbstractComplexBinding
- 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)
-
-