org.deegree.gml
Class GMLStreamWriter

java.lang.Object
  extended by org.deegree.gml.GMLStreamWriter

public class GMLStreamWriter
extends Object

Stream-based writer for GML instance documents or GML document fragments. Currently supports GML 2/3.0/3.1/3.2.

Instances of this class are not thread-safe.

Version:
$Revision: 32094 $, $Date: 2011-10-05 13:39:48 +0200 (Wed, 05 Oct 2011) $
Author:
Markus Schneider, last edited by: $Author: mschneider $
See Also:
GMLObject, GMLOutputFactory

Method Summary
 void close()
          Closes the underlying XML stream.
 GMLFeatureWriter getFeatureWriter()
           
 XMLStreamWriter getXMLStream()
          Returns the underlying XML stream.
 boolean isObjectExported(String gmlId)
          Returns whether the specified gml object has already been exported.
 void setAdditionalObjectHandler(GMLForwardReferenceHandler handler)
          Sets an GMLForwardReferenceHandler that copes with GMLReferences that are processed during export.
 void setCoordinateFormatter(CoordinateFormatter formatter)
          Controls the format (e.g. number of decimal places) for written coordinates.
 void setExportExtraProps(boolean exportExtraProps)
          Controls whether ExtraProps associated with feature objects should be exported as property elements.
 void setNamespaceBindings(Map<String,String> prefixToNs)
          Controls the namespace prefixes that are used whenever a qualified element or attribute is written (and no namespace prefix has been bound on the stream).
 void setOutputCRS(ICRS crs)
          Controls the output CRS for written geometries.
 void setProjection(ProjectionClause[] projection)
          Sets the feature properties to be included for exported Feature instances.
 void setRemoteXLinkTemplate(String remoteXLinkTemplate)
          Controls the representation of xlinks that point to objects that are not included in the written GML document.
 void setXLinkDepth(int inlineXLinklevels)
          Controls the number of xlink levels that will be expanded inside property elements.
 void setXLinkExpiry(int traverseXLinkExpiry)
          Controls the number number of seconds to wait when remote xlinks are expanded inside property elements.
 void write(Definition definition)
          Writes a GML representation of the given Definition to the stream.
 void write(Feature feature)
          Writes a GML representation of the given Feature to the stream.
 void write(Geometry geometry)
          Writes a GML representation of the given Geometry to the stream.
 void write(GMLObject object)
          Writes a GML representation of the given GMLObject to the stream.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

setOutputCRS

public void setOutputCRS(ICRS crs)
Controls the output CRS for written geometries.

Parameters:
crs - crs to be used for the geometries, can be null (keeps the original CRS)

setCoordinateFormatter

public void setCoordinateFormatter(CoordinateFormatter formatter)
Controls the format (e.g. number of decimal places) for written coordinates.

Parameters:
formatter - formatter to use, may be null (don't do any formatting)

setNamespaceBindings

public void setNamespaceBindings(Map<String,String> prefixToNs)
Controls the namespace prefixes that are used whenever a qualified element or attribute is written (and no namespace prefix has been bound on the stream).

Parameters:
prefixToNs - keys: prefix, value: namespace, may be null

setXLinkDepth

public void setXLinkDepth(int inlineXLinklevels)
Controls the number of xlink levels that will be expanded inside property elements.

Parameters:
inlineXLinklevels - number of xlink levels to be expanded, -1 expands to any depth

setXLinkExpiry

public void setXLinkExpiry(int traverseXLinkExpiry)
Controls the number number of seconds to wait when remote xlinks are expanded inside property elements.

Parameters:
traverseXLinkExpiry - number of seconds to wait for the resolving of remote xlinks, -1 sets no timeout

setRemoteXLinkTemplate

public void setRemoteXLinkTemplate(String remoteXLinkTemplate)
Controls the representation of xlinks that point to objects that are not included in the written GML document.

Parameters:
remoteXLinkTemplate - template used to create references to document-remote objects, e.g. http://localhost:8080/d3_wfs_lab/services?SERVICE=WFS&REQUEST=GetGmlObject&VERSION=1.1.0&TRAVERSEXLINKDEPTH=1&GMLOBJECTID={} , the substring {} is replaced by the object id

setProjection

public void setProjection(ProjectionClause[] projection)
Sets the feature properties to be included for exported Feature instances.

Parameters:
projection - feature properties to be included, or null (include all feature props)

setAdditionalObjectHandler

public void setAdditionalObjectHandler(GMLForwardReferenceHandler handler)
Sets an GMLForwardReferenceHandler that copes with GMLReferences that are processed during export.

Parameters:
handler - handler, may be null

setExportExtraProps

public void setExportExtraProps(boolean exportExtraProps)
Controls whether ExtraProps associated with feature objects should be exported as property elements.

Parameters:
exportExtraProps - true, if extra props should be exported, false otherwise

isObjectExported

public boolean isObjectExported(String gmlId)
Returns whether the specified gml object has already been exported.

Parameters:
gmlId - id of the object, must not be null
Returns:
true, if the object has been exported, false otherwise

write

public void write(GMLObject object)
           throws XMLStreamException,
                  UnknownCRSException,
                  TransformationException
Writes a GML representation of the given GMLObject to the stream.

Parameters:
object - object to be written, must not be null
Throws:
XMLStreamException
UnknownCRSException
TransformationException

write

public void write(Feature feature)
           throws XMLStreamException,
                  UnknownCRSException,
                  TransformationException
Writes a GML representation of the given Feature to the stream.

Parameters:
feature - object to be written, must not be null
Throws:
XMLStreamException
UnknownCRSException
TransformationException

write

public void write(Geometry geometry)
           throws XMLStreamException,
                  UnknownCRSException,
                  TransformationException
Writes a GML representation of the given Geometry to the stream.

Parameters:
geometry - object to be written, must not be null
Throws:
XMLStreamException
UnknownCRSException
TransformationException

write

public void write(Definition definition)
           throws XMLStreamException
Writes a GML representation of the given Definition to the stream.

Parameters:
definition - object to be written, must not be null
Throws:
XMLStreamException

close

public void close()
           throws XMLStreamException
Closes the underlying XML stream.

Throws:
XMLStreamException

getXMLStream

public XMLStreamWriter getXMLStream()
Returns the underlying XML stream.

Returns:
the underlying XML stream, never null

getFeatureWriter

public GMLFeatureWriter getFeatureWriter()


Copyright © 2011. All Rights Reserved.