Mercurial > dive4elements > river
view flys-client/src/main/java/de/intevation/flys/client/server/ArtifactServiceImpl.java @ 4488:5041105d2edd
Check if response code from GGInA is 200 OK
Only parse the GGInA response if the status code is 200 OK. This improves the
error message if GGInA is not available and shows the real reason instead of a
JDOM error while parsing the response.
author | Björn Ricks <bjoern.ricks@intevation.de> |
---|---|
date | Wed, 14 Nov 2012 10:36:21 +0100 |
parents | 436eec3be6ff |
children | b660090b417d |
line wrap: on
line source
package de.intevation.flys.client.server; import org.apache.log4j.Logger; import com.google.gwt.user.server.rpc.RemoteServiceServlet; import de.intevation.flys.client.shared.exceptions.ServerException; import de.intevation.flys.client.shared.model.Artifact; import de.intevation.flys.client.client.services.ArtifactService; import de.intevation.flys.client.shared.model.Collection; import de.intevation.flys.client.shared.model.Recommendation; /** * This interface provides artifact specific services as CREATE, DESCRIBE, FEED, * ADVANCE and OUT. * * @author <a href="mailto:ingo.weinzierl@intevation.de">Ingo Weinzierl</a> */ public class ArtifactServiceImpl extends RemoteServiceServlet implements ArtifactService { /** Private logger. */ private static final Logger logger = Logger.getLogger(ArtifactServiceImpl.class); /** * Creates new Artifacts based on a given Recommendation and factory. * <b>Note, that all the work is done in ArtifactHelper!</b> * * @param locale The locale used for HTTP request. * @param factory The factory that is used to create the new Artifact. * @param recom Recommendation with details of the artifact to create. * * @return a new Artifact. */ public Artifact create( String locale, String factory, Recommendation recom ) throws ServerException { logger.info("ArtifactServiceImpl.create"); String url = getServletContext().getInitParameter("server-url"); return ArtifactHelper.createArtifact(url, locale, factory, recom); } /** * Create a new GaugeDischageCurveArtifact * * @param river the river * @param gaugeref reference id of the gauge */ public Artifact createGaugeDischargeCurveArtifact( Collection collection, String locale, String river, Long gaugeref) throws ServerException { logger.info("ArtifactServiceImpl.createGaugeDischargeCurverArtifact"); String url = getServletContext().getInitParameter("server-url"); Artifact artifact = ArtifactHelper.createGaugeDischargeCurveArtifact(url, locale, river, gaugeref); if (artifact == null) { return null; } logger.info("GaugeDischargeCurveArtifact created successfully"); CollectionHelper.addArtifact(collection, artifact, url, locale); return artifact; } } // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :