org.geotools.gml3.bindings
Class LineStringSegmentTypeBinding

java.lang.Object
  extended by org.geotools.xml.AbstractComplexBinding
      extended by org.geotools.gml3.bindings.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>

          
         


Field Summary
 
Fields inherited from interface org.geotools.xml.Binding
AFTER, BEFORE, OVERRIDE
 
Constructor Summary
LineStringSegmentTypeBinding(com.vividsolutions.jts.geom.GeometryFactory gf, com.vividsolutions.jts.geom.CoordinateSequenceFactory csf)
           
 
Method Summary
 java.lang.Object getProperty(java.lang.Object object, javax.xml.namespace.QName name)
          Subclasses should override this method if need be, the default implementation returns null.
 javax.xml.namespace.QName getTarget()
           
 java.lang.Class getType()
           
 java.lang.Object parse(ElementInstance instance, Node node, java.lang.Object value)
           
 
Methods inherited from class org.geotools.xml.AbstractComplexBinding
encode, getExecutionMode, getProperties, getProperties, initializeChildContext
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

LineStringSegmentTypeBinding

public LineStringSegmentTypeBinding(com.vividsolutions.jts.geom.GeometryFactory gf,
                                    com.vividsolutions.jts.geom.CoordinateSequenceFactory csf)
Method Detail

getTarget

public javax.xml.namespace.QName getTarget()
Returns:
The qualified name of the target for the binding.

getType

public java.lang.Class getType()

Returns:
The java type this binding maps to.

parse

public java.lang.Object parse(ElementInstance instance,
                              Node node,
                              java.lang.Object value)
                       throws java.lang.Exception

Specified by:
parse in interface ComplexBinding
Overrides:
parse in class AbstractComplexBinding
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:
java.lang.Exception - Strategy objects should not attempt to handle any exceptions.

getProperty

public java.lang.Object getProperty(java.lang.Object object,
                                    javax.xml.namespace.QName name)
                             throws java.lang.Exception
Description copied from class: AbstractComplexBinding
Subclasses should override this method if need be, the default implementation returns null.

Specified by:
getProperty in interface ComplexBinding
Overrides:
getProperty in class AbstractComplexBinding
Parameters:
object - The object being encoded.
name - The name of the property to obtain.
Returns:
The value of the property, or null.
Throws:
java.lang.Exception
See Also:
ComplexBinding.getProperty(Object, QName)


Copyright © 1996-2010 Geotools. All Rights Reserved.