Hi,
so far OGC services always had used one valued keys in requests, eventually creating
some complex syntax to hold the eventual structured values inside the key.
Of course the time should have come, sooner or later, to have a service with
repeated keys with different values in the requests… WCS 2.0 is the one, behold,
subset=… three times:
http://www.myserver.org:port/path?
service=WCS
&version=2.0
&request=GetCoverage
&coverageId=C0002
&subset=lon,http://www.opengis.net/def/crs/EPSG/0/4326(-71,47)
&subset=lat,http://www.opengis.net/def/crs/EPSG/0/4326(-66,51)
&subset=t,http://www.opengis.net/def/trs/ISO-
8601/0/Gregorian+UTC(“2009-11-06T23:20:52Z”)
Now… having the dispatcher and the KVP parser handle this is not too hard,
see the attached path.
Rationale: we allow String in the dispatcher kvp maps, which switch
from Map<String, String> to Map<String, Object> and have the
parseKVP method recognize those and build a List of parsed object,
it’s then up to the request reader to see if it got a single object, or a list
of object, for key that have multiple potential values.
Maybe not too elegant, the alternative would be switching the kvp maps
from Map<String, String> to Map<String, String> which seems a bit
more disruptive.
I’ve attached a patch for this, with a WCS 2.0 example of how things
should be handled by a kvp reader expecting one of these multikeys.
Opinions?
Cheers
Andrea
–
==
Our support, Your Success! Visit http://opensdi.geo-solutions.it for more information.
Ing. Andrea Aime
@geowolf
Technical Lead
GeoSolutions S.A.S.
Via Poggio alle Viti 1187
55054 Massarosa (LU)
Italy
phone: +39 0584 962313
fax: +39 0584 1660272
mob: +39 339 8844549
http://www.geo-solutions.it
http://twitter.com/geosolutions_it
(attachments)
multikey.patch (12.7 KB)