Mercurial > dive4elements > river
diff flys-client/src/main/java/de/intevation/flys/client/server/MetaDataServiceImpl.java @ 276:f4c8ce11df33
UI stub for data cage
flys-client/trunk@1902 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Sascha L. Teichmann <sascha.teichmann@intevation.de> |
---|---|
date | Wed, 11 May 2011 14:34:15 +0000 |
parents | 44a340c9becc |
children | f33af25b7490 |
line wrap: on
line diff
--- a/flys-client/src/main/java/de/intevation/flys/client/server/MetaDataServiceImpl.java Wed May 11 14:29:35 2011 +0000 +++ b/flys-client/src/main/java/de/intevation/flys/client/server/MetaDataServiceImpl.java Wed May 11 14:34:15 2011 +0000 @@ -1,21 +1,65 @@ package de.intevation.flys.client.server; import java.util.List; +import java.util.ArrayList; + +import org.w3c.dom.Document; +import org.w3c.dom.Element; +import org.w3c.dom.Node; +import org.w3c.dom.NodeList; import com.google.gwt.user.server.rpc.RemoteServiceServlet; +import de.intevation.artifacts.common.ArtifactNamespaceContext; + +import de.intevation.artifacts.common.utils.XMLUtils; + import de.intevation.flys.client.shared.exceptions.ServerException; import de.intevation.flys.client.client.services.MetaDataService; +import de.intevation.artifacts.httpclient.exceptions.ConnectionException; + +import de.intevation.artifacts.httpclient.http.HttpClient; +import de.intevation.artifacts.httpclient.http.HttpClientImpl; + public class MetaDataServiceImpl extends RemoteServiceServlet implements MetaDataService { - public List getMetaData(String url, String name) + public static final String ERROR_NO_META_DATA_FOUND = + "error_no_meta_data_found"; + + public List getMetaData(String url, String locale, String river) throws ServerException { - return null; + System.out.println("MetaDataService.getDistanceInfo"); + + Document doc = XMLUtils.newDocument(); + + XMLUtils.ElementCreator ec = new XMLUtils.ElementCreator( + doc, + ArtifactNamespaceContext.NAMESPACE_URI, + ArtifactNamespaceContext.NAMESPACE_PREFIX); + + Element riverEl = ec.create("river"); + + riverEl.setTextContent(river); + + doc.appendChild(riverEl); + + HttpClient client = new HttpClientImpl(url, locale); + + try { + Document result = client.callService(url, "metadata", doc); + + return new ArrayList(); + } + catch (ConnectionException ce) { + System.err.println(ce.getLocalizedMessage()); + } + + throw new ServerException(ERROR_NO_META_DATA_FOUND); } } // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :