Package org.geotools.xml.styling
Class SLDParser
Object
SLDParser
TODO: This really needs to be container ready
- Author:
- jgarnett
-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionSLDParser
(StyleFactory factory) Create a Stylereader - use if you already have a dom to parse.SLDParser
(StyleFactory factory, File f) Creates a new SLDStyle object.SLDParser
(StyleFactory factory, InputStream s) Creates a new SLDStyle object.SLDParser
(StyleFactory factory, Reader r) Creates a new SLDStyle object.SLDParser
(StyleFactory factory, String filename) Creates a new instance of SLDStylerSLDParser
(StyleFactory factory, URL url) Creates a new SLDStyle object.SLDParser
(StyleFactory factory, FilterFactory filterFactory) -
Method Summary
Modifier and TypeMethodDescriptionprotected DocumentBuilder
newDocumentBuilder
(boolean namespaceAware) protected AnchorPoint
parseAnchorPoint
(Node root) Internal method to parse an AnchorPoint node; protected visibility for testing.protected ChannelSelection
parseChannelSelection
(Node root) Internal parse method - made protected for unit testingprotected ColorMap
parseColorMap
(Node root) Internal parse method - made protected for unit testingprotected ColorMapEntry
parseColorMapEntry
(Node root) Internal parse method - made protected for unit testingprotected ContrastEnhancement
parseContrastEnhancement
(Node root) Internal parse method - made protected for unit testingparseDescriptor
(Node root) protected Displacement
parseDisplacement
(Node root) Internal parse method - made protected for unit testingprotected ExternalGraphic
parseExternalGraphic
(Node root) Internal parse method - made protected for unit testingprotected FeatureTypeConstraint
protected FeatureTypeStyle
parseFeatureTypeStyle
(Node style) Internal parse method - made protected for unit testingprotected Fill
Internal parse method - made protected for unit testingprotected Filter
parseFilter
(Node child) Internal parse method - made protected for unit testingprotected Font
Internal method to parse a Font Node; protected to allow for unit testingprotected Expression
parseGeometry
(Node root) Internal parse method - made protected for unit testingprotected String
parseGeometryName
(Node root) Internal parse method - made protected for unit testingprotected Graphic
parseGraphic
(Node root) Internal parse method - made protected for unit testingprotected Halo
Internal parse method - made protected for unit testingprotected LabelPlacement
parseLabelPlacement
(Node root) Internal parse method - made protected for unit testingprotected LinePlacement
parseLinePlacement
(Node root) Internal parse method - made protected for unit testingprotected LineSymbolizer
parseLineSymbolizer
(Node root) parses the SLD for a linesymbolizerprotected Mark
Internal parse method - made protected for unit testingParses a NamedStyle from node.protected String
parseOnlineResource
(Node root) Internal parse method - made protected for unit testingprotected OtherText
parseOtherText
(Node root) protected PointPlacement
parsePointPlacement
(Node root) Internal parse method - made protected for unit testingprotected PointSymbolizer
parsePointSymbolizer
(Node root) parses the SLD for a point symbolizerprotected PolygonSymbolizer
parsePolygonSymbolizer
(Node root) parses the SLD for a polygonsymbolizerprotected RasterSymbolizer
parseRasterSymbolizer
(Node root) parses the SLD for a text symbolizerprotected RemoteOWS
parseRemoteOWS
(Node root) protected Rule
Internal parse method - made protected for unit testingprotected SelectedChannelType
parseSelectedChannel
(Node root) Internal parse method - made protected for unit testingprotected ShadedRelief
parseShadedRelief
(Node root) Internal parse method - made protected for unit testingparseSLD()
protected Stroke
parseStroke
(Node root) Internal parse method - made protected for unit testingparseStyle
(Node n) build a style for the Node providedprotected TextSymbolizer
parseTextSymbolizer
(Node root) parses the SLD for a text symbolizerStyle[]
readDOM()
Read styles from the dom that was previously parsed.Style[]
Read the DOM provided and create a Style object for each user style foundStyle[]
readXML()
Read the xml inputsource provided and create a Style object for each user style foundvoid
setEntityResolver
(EntityResolver entityResolver) Sets the EntityResolver implementation that will be used by DocumentBuilder to resolve XML external entities.void
Sets the file to use to read the SLD fromvoid
setInput
(InputStream in) Sets the input stream to read the SLD fromvoid
Sets the input stream to read the SLD fromvoid
set the file to read the SLD fromvoid
sets an URL to read the SLD fromvoid
setOnLineResourceLocator
(ResourceLocator onlineResourceLocator) Sets the resource loader implementation for parsing online resources.
-
Field Details
-
source
-
factory
-
-
Constructor Details
-
SLDParser
Create a Stylereader - use if you already have a dom to parse.- Parameters:
factory
- The StyleFactory to use to build the style
-
SLDParser
-
SLDParser
Creates a new instance of SLDStyler- Parameters:
factory
- The StyleFactory to use to read the filefilename
- The file to be read.- Throws:
FileNotFoundException
- - if the file is missing
-
SLDParser
Creates a new SLDStyle object.- Parameters:
factory
- The StyleFactory to use to read the filef
- the File to be read- Throws:
FileNotFoundException
- - if the file is missing
-
SLDParser
Creates a new SLDStyle object.- Parameters:
factory
- The StyleFactory to use to read the fileurl
- the URL to be read.- Throws:
IOException
- - if something goes wrong reading the file
-
SLDParser
Creates a new SLDStyle object.- Parameters:
factory
- The StyleFactory to use to read the files
- The inputstream to be read
-
SLDParser
Creates a new SLDStyle object.- Parameters:
factory
- The StyleFactory to use to read the filer
- The inputstream to be read
-
-
Method Details
-
setInput
set the file to read the SLD from- Parameters:
filename
- the file to read the SLD from- Throws:
FileNotFoundException
- if the file is missing
-
setInput
Sets the file to use to read the SLD from- Parameters:
f
- the file to use- Throws:
FileNotFoundException
- if the file is missing
-
setInput
sets an URL to read the SLD from- Parameters:
url
- the url to read the SLD from- Throws:
IOException
- If anything goes wrong opening the url
-
setInput
Sets the input stream to read the SLD from- Parameters:
in
- the inputstream used to read the SLD from
-
setInput
Sets the input stream to read the SLD from- Parameters:
in
- the inputstream used to read the SLD from
-
setOnLineResourceLocator
Sets the resource loader implementation for parsing online resources. -
setEntityResolver
Sets the EntityResolver implementation that will be used by DocumentBuilder to resolve XML external entities. -
newDocumentBuilder
protected DocumentBuilder newDocumentBuilder(boolean namespaceAware) throws ParserConfigurationException - Throws:
ParserConfigurationException
-
readXML
Read the xml inputsource provided and create a Style object for each user style found- Returns:
- Style[] the styles constructed.
- Throws:
RuntimeException
- if a parsing error occurs
-
readDOM
Read styles from the dom that was previously parsed. -
readDOM
Read the DOM provided and create a Style object for each user style found- Parameters:
document
- a dom containing the SLD- Returns:
- Style[] the styles constructed.
-
parseSLD
-
parseDescriptor
-
parseFeatureTypeConstraint
-
parseRemoteOWS
-
parseNamedStyle
Parses a NamedStyle from node.A NamedStyle is used to refer to a style that has a name in a WMS, and is defined as:
<code> <xsd:element name="NamedStyle"> <xsd:annotation> <xsd:documentation> A NamedStyle is used to refer to a style that has a name in a WMS. </xsd:documentation> </xsd:annotation> <xsd:complexType> <xsd:sequence> <xsd:element ref="sld:Name"/> </xsd:sequence> </xsd:complexType> </xsd:element> </code>
-
parseStyle
build a style for the Node provided- Parameters:
n
- the node which contains the style to be parsed.- Returns:
- the Style constructed.
- Throws:
RuntimeException
- if an error occurs setting up the parser
-
parseFeatureTypeStyle
Internal parse method - made protected for unit testing -
parseRule
Internal parse method - made protected for unit testing -
parseFilter
Internal parse method - made protected for unit testing -
parseLineSymbolizer
parses the SLD for a linesymbolizer- Parameters:
root
- a w2c Dom Node- Returns:
- the linesymbolizer
-
parsePolygonSymbolizer
parses the SLD for a polygonsymbolizer- Parameters:
root
- w3c dom node- Returns:
- the polygon symbolizer
-
parseTextSymbolizer
parses the SLD for a text symbolizer- Parameters:
root
- w3c dom node- Returns:
- the TextSymbolizer
-
parseOtherText
-
parseRasterSymbolizer
parses the SLD for a text symbolizer- Parameters:
root
- w3c dom node- Returns:
- the TextSymbolizer
-
parseColorMapEntry
Internal parse method - made protected for unit testing -
parseColorMap
Internal parse method - made protected for unit testing -
parseSelectedChannel
Internal parse method - made protected for unit testing -
parseChannelSelection
Internal parse method - made protected for unit testing -
parseContrastEnhancement
Internal parse method - made protected for unit testing -
parseShadedRelief
Internal parse method - made protected for unit testing -
parsePointSymbolizer
parses the SLD for a point symbolizer- Parameters:
root
- a w3c dom node- Returns:
- the pointsymbolizer
-
parseGraphic
Internal parse method - made protected for unit testing -
parseGeometryName
Internal parse method - made protected for unit testing -
parseGeometry
Internal parse method - made protected for unit testing -
parseMark
Internal parse method - made protected for unit testing -
parseExternalGraphic
Internal parse method - made protected for unit testing -
parseOnlineResource
Internal parse method - made protected for unit testing -
parseStroke
Internal parse method - made protected for unit testing -
parseFill
Internal parse method - made protected for unit testing -
parseFont
Internal method to parse a Font Node; protected to allow for unit testing -
parseLabelPlacement
Internal parse method - made protected for unit testing -
parsePointPlacement
Internal parse method - made protected for unit testing -
parseLinePlacement
Internal parse method - made protected for unit testing -
parseAnchorPoint
Internal method to parse an AnchorPoint node; protected visibility for testing. -
parseDisplacement
Internal parse method - made protected for unit testing -
parseHalo
Internal parse method - made protected for unit testing
-