Mercurial > dive4elements > river
diff flys-client/src/main/java/de/intevation/flys/client/server/CreateCollectionServiceImpl.java @ 215:e02f50a3ad59
Improved the exception handling of artifact / collection specific operations. Warning dialog are displayed after such an exception.
flys-client/trunk@1657 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Ingo Weinzierl <ingo.weinzierl@intevation.de> |
---|---|
date | Fri, 08 Apr 2011 08:51:28 +0000 |
parents | 987567f31200 |
children | 924da6695800 |
line wrap: on
line diff
--- a/flys-client/src/main/java/de/intevation/flys/client/server/CreateCollectionServiceImpl.java Fri Apr 08 08:45:15 2011 +0000 +++ b/flys-client/src/main/java/de/intevation/flys/client/server/CreateCollectionServiceImpl.java Fri Apr 08 08:51:28 2011 +0000 @@ -13,6 +13,7 @@ import de.intevation.artifacts.httpclient.http.HttpClientImpl; import de.intevation.artifacts.httpclient.http.response.DocumentResponseHandler; +import de.intevation.flys.client.shared.exceptions.ServerException; import de.intevation.flys.client.shared.model.Collection; import de.intevation.flys.client.shared.model.DefaultCollection; import de.intevation.flys.client.client.services.CreateCollectionService; @@ -32,8 +33,15 @@ public static final String XPATH_COLLECTION_UUID = "/art:result/art:artifact-collection/@art:uuid"; + /** Error message key that is thrown if an error occured while creating + * a new collection.*/ + public static final String ERROR_CREATE_COLLECTION = + "error_create_collection"; - public Collection create(String serverUrl, String ownerId) { + + public Collection create(String serverUrl, String ownerId) + throws ServerException + { System.out.println("Start creating a new collection."); Document create = @@ -47,13 +55,17 @@ String uuid = XMLUtils.xpathString( doc, XPATH_COLLECTION_UUID, ArtifactNamespaceContext.INSTANCE); + if (uuid == null || uuid.trim().length() == 0) { + throw new ServerException(ERROR_CREATE_COLLECTION); + } + return new DefaultCollection(uuid); } catch (ConnectionException ce) { System.err.println(ce.getLocalizedMessage()); } - return null; + throw new ServerException(ERROR_CREATE_COLLECTION); } } // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :