From: <hei...@us...> - 2009-02-15 20:01:23
|
Revision: 2207 http://geonetwork.svn.sourceforge.net/geonetwork/?rev=2207&view=rev Author: heikkidoeleman Date: 2009-02-15 20:01:19 +0000 (Sun, 15 Feb 2009) Log Message: ----------- Continued implementation of CSW 202 ebRIM service Modified Paths: -------------- sandbox/3.0.x/geonetwork-services-ebrim/src/main/java/org/geonetwork/services/ebrim/csw202/CSW202ServiceImpl.java Modified: sandbox/3.0.x/geonetwork-services-ebrim/src/main/java/org/geonetwork/services/ebrim/csw202/CSW202ServiceImpl.java =================================================================== --- sandbox/3.0.x/geonetwork-services-ebrim/src/main/java/org/geonetwork/services/ebrim/csw202/CSW202ServiceImpl.java 2009-02-15 19:40:07 UTC (rev 2206) +++ sandbox/3.0.x/geonetwork-services-ebrim/src/main/java/org/geonetwork/services/ebrim/csw202/CSW202ServiceImpl.java 2009-02-15 20:01:19 UTC (rev 2207) @@ -57,7 +57,8 @@ * optional; the allowed content encoding(s) ("application/xml" and/or * "application/x-www-form-urlencoded") shall be advertised in the capabilities document as * values of the operation-specific "Content-Type" constraint. The value of the service - * parameter shall be the service type code "CSW-ebRIM". The value of the version parameter shall be "1.0.0". + * parameter shall be the service type code "CSW-ebRIM". The value of the version parameter + * shall be "1.0.0". * * The sections parameter may be used to request a subset of the complete capabilities document; * the value is a comma-separated list of section names. The set of recognized section names @@ -78,25 +79,41 @@ * */ public Capabilities getCapabilities(GetCapabilities request) { - Sections sections = request.getSections(); - List<String> sectionList = sections.getSection(); Capabilities response = new Capabilities(); - if(sectionList != null && sectionList.size() > 0) { - // return the requested sections - for(String section : sectionList) { - if(section.equals(CapabilitiesSection.Contents)) { - // not recognized in ebRIM profile of CSW : - // what TODO ? + + String service = request.getService(); + List<String> versionList = request.getAcceptVersions().getVersion(); + // TODO get rid of hard-coded strings + if(service != null && service.equals("CSW-ebRIM") && versionList != null) { + String version = versionList.get(0); + if(version != null && version.equals("1.0.0")) { + // OK + Sections sections = request.getSections(); + List<String> sectionList = sections.getSection(); + if(sectionList != null && sectionList.size() > 0) { + // return the requested sections + for(String section : sectionList) { + if(section.equals(CapabilitiesSection.Contents)) { + // not recognized in ebRIM profile of CSW : + // what TODO ? + } + else { + CapabilitiesSection cSection = CapabilitiesSection.valueOf(section); + // TODO get section and add to response + } + } } else { - CapabilitiesSection cSection = CapabilitiesSection.valueOf(section); - // TODO get section and add to response + // add complete Capabilities document to response } } + else { + // TODO how to return error response + } } else { - // add complete Capabilities document to response - } + // TODO how to return error response + } return response; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |