org.geotools.gml3.bindings
Class LinearRingTypeBinding

Object
  extended by AbstractComplexBinding
      extended by LinearRingTypeBinding
All Implemented Interfaces:
Binding, ComplexBinding

public class LinearRingTypeBinding
extends AbstractComplexBinding

Binding object for the type http://www.opengis.net/gml:LinearRingType.

         
  <complexType name="LinearRingType">
      <annotation>
          <documentation>A LinearRing is defined by four or more coordinate tuples, with linear interpolation between them; the first and last coordinates must be coincident.</documentation>
      </annotation>
      <complexContent>
          <extension base="gml:AbstractRingType">
              <sequence>
                  <choice>
                      <annotation>
                          <documentation>GML supports two different ways to specify the control points of a linear ring.
  1. A sequence of "pos" (DirectPositionType) or "pointProperty" (PointPropertyType) elements. "pos" elements are control points that are only part of this ring, "pointProperty" elements contain a point that may be referenced from other geometry elements or reference another point defined outside of this ring (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 ring only. The number of direct positions in the list must be at least four.</documentation>
                      </annotation>
                      <choice maxOccurs="unbounded" minOccurs="4">
                          <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>
                      <element maxOccurs="unbounded" minOccurs="4" ref="gml:coord">
                          <annotation>
                              <documentation>Deprecated with GML version 3.0 and included for backwards compatibility with GML 2. Use "pos" elements instead.</documentation>
                          </annotation>
                      </element>
                  </choice>
              </sequence>
          </extension>
      </complexContent>
  </complexType>

          
         


Field Summary
 
Fields inherited from interface Binding
AFTER, BEFORE, OVERRIDE
 
Constructor Summary
LinearRingTypeBinding(GeometryFactory gFactory, CoordinateSequenceFactory csFactory)
           
 
Method Summary
 int getExecutionMode()
          This implementation returns Binding.OVERRIDE.
 Object getProperty(Object object, QName name)
          Subclasses should override this method if need be, the default implementation returns null.
 QName getTarget()
           
 Class getType()
           
 Object parse(ElementInstance instance, Node node, Object value)
           
 
Methods inherited from class AbstractComplexBinding
encode, getProperties, initializeChildContext
 
Methods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

LinearRingTypeBinding

public LinearRingTypeBinding(GeometryFactory gFactory,
                             CoordinateSequenceFactory csFactory)
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.

getExecutionMode

public int getExecutionMode()
Description copied from class: AbstractComplexBinding
This implementation returns Binding.OVERRIDE.

Subclasses should override to change this behaviour.

Specified by:
getExecutionMode in interface Binding
Overrides:
getExecutionMode in class AbstractComplexBinding
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

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:
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 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:
Exception
See Also:
ComplexBinding.getProperty(Object, QName)


Copyright © 1996-2009 Geotools. All Rights Reserved.