[Geoserver-devel] WCS vs WMS dimension implementations

Hello!

I apologize for such a long email but I wanted to give enough background information about my code.

There are two parts, one is a structuredgridcoverage2dreader and the other is a listener class that I define in the web.xml.

I have some code in the listener class that will publish coverages using the CoverageInfo and LayerInfo classes:
CatalogBuilder builder = new CatalogBuilder(catalog);
CoverageInfo ci = this.builder.buildCoverage(layername);
LayerInfo layer = this.builder.buildLayer(ci);

My data has time and elevation so I publish those dimensions by getting the metadata map from my CoverageInfo and adding dimensions to it:

DimensionInfoImpl dim = new DimensionInfoImpl();
DimensionDefaultValueSetting ddvs = new DimensionDefaultValueSetting();
//assume dim & ddvs are set appropriately and added to my CoverageInfo object

The above DimensionInfoImpl does not work for WCS 1.1.0 describeCoverage.

Question 1: So I went ahead and created a separate CoverageDimensionImpl which seems to work for WCS, but why are there two different dimension implementations ?

Questions 2: I know for WMS get capabilities the getMetadataNames/getMetadataValues methods are called in my reader for time and elevation but what methods are called for WCS dimensions ?

Secondly, for WCS I want my elevation dimension to be a list of values but using the CoverageDimensionImpl only allows for a number range to be passed in.

Questions 3: Is there a way I can pass in a list of values?

Thank you for all the help!

Best,

Sylvia