Class TLcdGXYViewPNGEncoder
java.lang.Object
com.luciad.wms.server.viewencoder.TLcdGXYViewPNGEncoder
- All Implemented Interfaces:
ILcdGXYViewEncoder,ILcdWMSFeatureInfoRequestEncoder
@LcdService(service=ILcdGXYViewEncoder.class,
priority=5000)
public class TLcdGXYViewPNGEncoder
extends Object
implements ILcdGXYViewEncoder, ILcdWMSFeatureInfoRequestEncoder
Implementation of
ILcdGXYViewEncoder and ILcdWMSFeatureInfoRequestEncoder
that can encode a ILcdGXYView as PNG, with or without selection.
This encoder uses the ObjectPlanet PNG encoder library.
This view encoder allows to set the compression level (see setCompressionLevel(int),
getCompressionLevel()).
This make it possible to determine a trade-off between compression and speed. The possible values are [0 - 9],
with 0 indicating no compression and 9 indicating best compression.
The default value is set to 6.- See Also:
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidencode(ILcdGXYLayerSubsetList aSubsetList, OutputStream aOutputStream, ILcdGXYView aGXYView) Encodes the given selection in theTLcdGXYLayerSubsetListfrom a givenILcdGXYViewand sends it to the givenOutputStream.encodeGXYView(ILcdGXYView aGXYView, OutputStream aOutputStream, ALcdRequestContext aRequestContext) Encodes a givenILcdGXYViewto the providedOutputStream.intReturns the compression level.Returns a content type that identifies the encoding approach used by this encoder and that gets advertised in the OGC service capabilities.voidsetCompressionLevel(int aCompressionLevel) Sets the compression level.
-
Constructor Details
-
TLcdGXYViewPNGEncoder
public TLcdGXYViewPNGEncoder()Creates a newTLcdGXYViewPNGEncoderobject.
-
-
Method Details
-
encodeGXYView
public String encodeGXYView(ILcdGXYView aGXYView, OutputStream aOutputStream, ALcdRequestContext aRequestContext) throws IOException Description copied from interface:ILcdGXYViewEncoderEncodes a givenILcdGXYViewto the providedOutputStream.- Specified by:
encodeGXYViewin interfaceILcdGXYViewEncoder- Parameters:
aGXYView- theILcdGXYViewto be encoded. You can rely on itsgetImagemethod to access the rendered view.aOutputStream- theOutputStreamto write the encoded view to.aRequestContext- anALcdRequestContextgiving access to the request parameters. Can benull.- Returns:
- the content type used by the encoding. This is set as content type on the HTTP(S) response and cannot be
null. - Throws:
IOException- if an I/O exception occurs during the encoding
-
getContentType
Description copied from interface:ILcdGXYViewEncoderReturns a content type that identifies the encoding approach used by this encoder and that gets advertised in the OGC service capabilities. This is usually the MIME type of the encoded result, but this is not required: it is up to theencodeGXYViewmethod to return the actually used content type for a givenILcdGXYView.- Specified by:
getContentTypein interfaceILcdGXYViewEncoder- Specified by:
getContentTypein interfaceILcdWMSFeatureInfoRequestEncoder- Returns:
- the content type that identifies the encoding approach used by this encoder
-
setCompressionLevel
public void setCompressionLevel(int aCompressionLevel) Sets the compression level. The possible values are [0 - 9], with 0 indicating no compression and 9 indicating best compression.- Parameters:
aCompressionLevel- A compression level.- See Also:
-
getCompressionLevel
public int getCompressionLevel()Returns the compression level. The possible values are [0 - 9], with 0 indicating no compression and 9 indicating best compression.- Returns:
- the compression level.
- See Also:
-
encode
public void encode(ILcdGXYLayerSubsetList aSubsetList, OutputStream aOutputStream, ILcdGXYView aGXYView) throws jakarta.servlet.ServletException Description copied from interface:ILcdWMSFeatureInfoRequestEncoderEncodes the given selection in theTLcdGXYLayerSubsetListfrom a givenILcdGXYViewand sends it to the givenOutputStream.- Specified by:
encodein interfaceILcdWMSFeatureInfoRequestEncoder- Parameters:
aSubsetList- aTLcdGXYLayerSubsetListcontaining the selection to be encoded.aOutputStream- theOutputStreamto write the output to.aGXYView- theILcdGXYViewin which the elements are selected .- Throws:
jakarta.servlet.ServletException- for writing and sending exceptions.
-