protected WFSImage createHighlightImage() { return new WFSImage( this.layer, this.session.getClient(), this.session.getLayers().get(this.layerId).getStyleName(), JobType.HIGHLIGHT.toString()); }
public boolean runHighlightJob() { if (!this.sendHighlight) { // highlight job with a flag for not sending images, what is going on in here? return true; } if (!this.requestHandler(null)) { return false; } this.featuresHandler(); if (!goNext()) { return false; } // Send geometries, if requested as well if (this.session.isGeomRequest()) { this.sendWFSFeatureGeometries( this.geomValuesList, ResultProcessor.CHANNEL_FEATURE_GEOMETRIES); } log.debug("highlight image handling", this.features.size()); // IMAGE HANDLING log.debug("sending"); Location location = this.session.getLocation(); if (this.image == null) { this.image = new WFSImage( this.layer, this.session.getClient(), this.session.getLayers().get(this.layerId).getStyleName(), JobType.HIGHLIGHT.toString()); } BufferedImage bufferedImage = this.image.draw(this.session.getMapSize(), location, this.features); if (bufferedImage == null) { this.imageParsingFailed(); throw new RuntimeException("Image parsing failed!"); } Double[] bbox = location.getBboxArray(); // cache (non-persistant) setImageCache( bufferedImage, JobType.HIGHLIGHT.toString() + "_" + this.session.getSession(), bbox, false); String url = createImageURL(JobType.HIGHLIGHT.toString(), bbox); this.sendWFSImage(url, bufferedImage, bbox, false, false); return true; }