private CoverageResponseDelegate getResponseDelegate(String outputFormat) { CoverageResponseDelegate delegate = responseFactory.encoderFor(outputFormat); if (delegate == null) { throw new WcsException("Could not find encoder for output format " + outputFormat); } return delegate; }
/** Constructor. */ private MIMETypeMapper(CoverageResponseDelegateFinder finder, Catalog catalog) { // collect all of the output mime types for (String of : finder.getOutputFormats()) { CoverageResponseDelegate delegate = finder.encoderFor(of); String mime = delegate.getMimeType(of); outputMimeTypes.add(mime); } catalog.addListener(new MimeTypeCacheClearingListener()); }
"format", new PropertyModel(getCoverage, "outputFormat"), responseFactory.getOutputFormats()); details.add(formats);
/** * Checks if the supported format string list contains the specified format, doing a case * insensitive search. If found the declared output format name is returned, otherwise null is * returned. * * @param supportedFormats * @param format */ private String getDeclaredFormat(List<String> supportedFormats, String format) { // supported formats may be setup using old style formats, first scan // the configured list for (String sf : supportedFormats) { if (sf.equalsIgnoreCase(format.trim())) { return sf; } else { CoverageResponseDelegate delegate = responseFactory.encoderFor(sf); if (delegate != null && delegate.canProduce(format)) return sf; } } return null; }
|| ct.getAcceptVersions().getVersion().contains("2.0.1")) { Set<String> formats = new TreeSet<String>(); for (String format : responseFactory.getOutputFormats()) { CoverageResponseDelegate delegate = responseFactory.encoderFor(format); String mime = delegate.getMimeType(format); try {
/** * Checks if the supported format string list contains the specified format, doing a case * insensitive search. If found the declared output format name is returned, otherwise null is * returned. * * @param supportedFormats * @param format */ private String getDeclaredFormat(List supportedFormats, String format) { // supported formats may be setup using old style formats, first scan // the // configured list for (Iterator it = supportedFormats.iterator(); it.hasNext(); ) { String sf = (String) it.next(); if (sf.equalsIgnoreCase(format)) { return sf; } else { CoverageResponseDelegate delegate = responseFactory.encoderFor(sf); if (delegate != null && delegate.canProduce(format)) return sf; } } return null; }
protected void handleSupportedFormats(CoverageInfo ci) throws Exception { // gather all the formats for this coverage Set<String> formats = new LinkedHashSet<String>(); for (Iterator it = ci.getSupportedFormats().iterator(); it.hasNext(); ) { String format = (String) it.next(); // wcs 1.1 requires mime types, not format names try { CoverageResponseDelegate delegate = responseFactory.encoderFor(format); String formatMime = delegate.getMimeType(format); if (formatMime != null) formats.add(formatMime); } catch (Exception e) { // no problem, we just want to avoid people writing HALLABALOOLA in the // supported formats section of the coverage config and then break the // describe response } } // sort them for (String format : formats) { element("wcs:SupportedFormat", format); } }
public String getMimeType(Object value, Operation operation) { GetCoverageType getCoverage = (GetCoverageType) operation.getParameters()[0]; String format = getCoverage.getFormat(); if (format == null) { return "image/tiff"; } else { CoverageResponseDelegate delegate = responseFactory.encoderFor(format); if (delegate == null) { throw new WCS20Exception( "Unsupported format " + format, OWSExceptionCode.InvalidParameterValue, "format"); } else { return format; } } }
public void write(Object value, OutputStream output, Operation operation) throws IOException { // grab the coverage GridCoverage2D coverage = (GridCoverage2D) value; // grab the format GetCoverageType getCoverage = (GetCoverageType) operation.getParameters()[0]; String format = getCoverage.getFormat(); if (format == null) { format = "image/tiff"; } // extract additional extensions final Map<String, String> encodingParameters = new HashMap<String, String>(); final ExtensionType extension = getCoverage.getExtension(); if (extension != null) { final EList<ExtensionItemType> extensions = extension.getContents(); for (ExtensionItemType ext : extensions) { encodingParameters.put(ext.getName(), ext.getSimpleContent()); } } String coverageId = getCoverage.getCoverageId(); if (coverageId != null) { encodingParameters.put(COVERAGE_ID_PARAM, coverageId); } // grab the delegate CoverageResponseDelegate delegate = responseFactory.encoderFor(format); delegate.encode(coverage, format, encodingParameters, output); }
@Override public String getAttachmentFileName(Object value, Operation operation) { // grab the format GetCoverageType getCoverage = (GetCoverageType) operation.getParameters()[0]; String format = getCoverage.getFormat(); if (format == null) { format = "image/tiff"; } // grab the delegate and thus the extension CoverageResponseDelegate delegate = responseFactory.encoderFor(format); // collect the name of the coverages that have been requested String extension = delegate.getFileExtension(format); return delegate.getFileName((GridCoverage2D) value, getCoverage.getCoverageId(), format); } }
CoverageResponseDelegate delegate = responseFactory.encoderFor(outputFormat); if (delegate == null) throw new WcsException("Could not find encoder for output format " + outputFormat);
CoverageResponseDelegate delegate = responseFactory.encoderFor(format);
CoverageResponseDelegate delegate = responseFactory.encoderFor(outputFormat); if (delegate == null) throw new WcsException("Could not find encoder for output format " + outputFormat);
private void handleOutput(GetCoverageRequest request) { String format = request.outputFormat; final CoverageResponseDelegate encoder = responseFactory.encoderFor(format); String mime = encoder.getMimeType(request.outputFormat); start("Output", attributes("store", "true", "format", mime));