WCS ignores configured units & symbols on elevation & time dimensions

Description

Despite configuring a dimension with a custom unit and symbol, during a GetCoverage request GeoServer will fallback to the default units & symbols (time=seconds & elevation=meters).

Notably, DescribeCoverage responses do contain the correct units & symbols so this appears to be limited to GetCoverage responses.

WCSDimsensSubsetHelper.java contains an attribute "enabledDimensions" which is a case sensitive map of dimensionId's to DimensionInfo objects. The "TIME" & "ELEVATION" dimensions which are used to retrieve the DimensionInfo do not match the "time" & "elevation" dimensionId's in the map which results in default units & symbols being used. Clearly the case sensitivity with those dimensions is an expected issue as the line directly above compares them using equalsIgnoreCase. Something similar needs to be done when retrieving DimensionInfo.

Environment

RHEL 7.3, Apache Tomcat 8.0.33, Java 8

Assignee

Unassigned

Reporter

Kevin M. Weiss

Triage

Fix versions

None

Affects versions

Priority

Medium
Configure