public StaticVisualization renderLayer(OperationResult operationResult) throws OXFException {
PlanarImage resultImage = null;
String format = (String) operationResult.getUsedParameters().getParameterShellWithCommonName(Parameter.COMMON_NAME_FORMAT).getSpecifiedValue();
SeekableStream seekableStream = SeekableStream.wrapInputStream(operationResult.getIncomingResultAsStream(),
true);
ParameterBlock pb = new ParameterBlock();
pb.add(seekableStream);
if (format.toLowerCase().contains("png")) {
resultImage = JAI.create("PNG", pb);
}
else if (format.toLowerCase().contains("gif")) {
resultImage = JAI.create("GIF", pb);
}
else if (format.toLowerCase().contains("tif")) {
resultImage = JAI.create("TIFF", pb);
}
else if (format.toLowerCase().contains("jpeg") || format.toLowerCase().contains("jpg")) {
resultImage = JAI.create("JPEG", pb);
}
else {
throw new OXFException("Format '" + format + "' is not supported by this WMSRenderer.");
}
return new StaticVisualization(resultImage.getAsBufferedImage());
}