super(GetCoverageType.class, WCS20_FACTORY);
}
@Override
public Object read(Object request, Map kvp, Map rawKvp) throws Exception {
GetCoverageType gc = (GetCoverageType) super.read(request, kvp, rawKvp);
// handle dimension subsets
Object subsets = kvp.get("subset");
if (subsets instanceof DimensionSubsetType) {
gc.getDimensionSubset().add((DimensionSubsetType) subsets);
} else if (subsets instanceof List) {
for (Object subset : (List) subsets) {
gc.getDimensionSubset().add((DimensionSubsetType) subset);
}
}
// prepare for extensions
gc.setExtension(WCS20_FACTORY.createExtensionType());
// parse the extensions. Note, here we do only the validation bits that are not shared
// with the XML, everything else is in GetCoverage
parseGeoTiffExtension(gc, kvp);
parseCRSExtension(gc, rawKvp);