/** * Extracts the NetCDF encoding settings out of the encoding parameters * * @param encodingParameters * @return */ static NetCDFLayerSettingsContainer getSettings(Map<String, String> encodingParameters) { Set<String> keys = encodingParameters.keySet(); if (keys != null && !keys.isEmpty() && keys.contains(WCS20GetCoverageResponse.COVERAGE_ID_PARAM)) { String coverageId = encodingParameters.get(WCS20GetCoverageResponse.COVERAGE_ID_PARAM); if (coverageId != null) { return getSettings(coverageId); } } return null; }
@Override public NetCDFEncoder getEncoderFor( GranuleStack granuleStack, File file, Map<String, String> encodingParameters, String outputFormat) throws IOException { NetCDFLayerSettingsContainer settings = NetCDFEncoder.getSettings(encodingParameters); if (settings != null && Boolean.TRUE.equals( settings.getMetadata().get(GHRSSTEncoder.SETTINGS_KEY, Boolean.class))) { return new GHRSSTEncoder(granuleStack, file, encodingParameters, outputFormat); } // if no GHRSST settings, or disabled, then look for some other encoder return null; }
@Override public String getOutputFileName(GranuleStack granuleStack, String coverageId, String format) { NetCDFLayerSettingsContainer settings = NetCDFEncoder.getSettings(coverageId); MetadataMap metadata = settings.getMetadata(); if (settings == null