Mercurial > dive4elements > river
comparison flys-client/src/main/java/de/intevation/flys/client/server/AdvanceServiceImpl.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 | 88c530c25968 |
children | 924da6695800 |
comparison
equal
deleted
inserted
replaced
214:29c6d9573ae7 | 215:e02f50a3ad59 |
---|---|
11 import de.intevation.artifacts.httpclient.exceptions.ConnectionException; | 11 import de.intevation.artifacts.httpclient.exceptions.ConnectionException; |
12 import de.intevation.artifacts.httpclient.http.HttpClient; | 12 import de.intevation.artifacts.httpclient.http.HttpClient; |
13 import de.intevation.artifacts.httpclient.http.HttpClientImpl; | 13 import de.intevation.artifacts.httpclient.http.HttpClientImpl; |
14 import de.intevation.artifacts.httpclient.http.response.DocumentResponseHandler; | 14 import de.intevation.artifacts.httpclient.http.response.DocumentResponseHandler; |
15 | 15 |
16 import de.intevation.flys.client.shared.exceptions.ServerException; | |
16 import de.intevation.flys.client.shared.model.Artifact; | 17 import de.intevation.flys.client.shared.model.Artifact; |
17 import de.intevation.flys.client.client.services.AdvanceService; | 18 import de.intevation.flys.client.client.services.AdvanceService; |
18 | 19 |
19 | 20 |
20 /** | 21 /** |
28 { | 29 { |
29 public static final String XPATH_RESULT = "/art:result/text()"; | 30 public static final String XPATH_RESULT = "/art:result/text()"; |
30 | 31 |
31 public static final String OPERATION_FAILURE = "FAILED"; | 32 public static final String OPERATION_FAILURE = "FAILED"; |
32 | 33 |
34 public static final String ERROR_ADVANCE_ARTIFACT = "error_advance_artifact"; | |
33 | 35 |
34 public Artifact advance(String serverUrl, Artifact artifact, String target){ | 36 |
37 public Artifact advance(String serverUrl, Artifact artifact, String target) | |
38 throws ServerException | |
39 { | |
35 Document advance = ClientProtocolUtils.newAdvanceDocument( | 40 Document advance = ClientProtocolUtils.newAdvanceDocument( |
36 artifact.getUuid(), | 41 artifact.getUuid(), |
37 artifact.getHash(), | 42 artifact.getHash(), |
38 target); | 43 target); |
39 | 44 |
46 artifact.getHash()), | 51 artifact.getHash()), |
47 advance, | 52 advance, |
48 new DocumentResponseHandler()); | 53 new DocumentResponseHandler()); |
49 | 54 |
50 if (description == null) { | 55 if (description == null) { |
51 return null; | 56 throw new ServerException(ERROR_ADVANCE_ARTIFACT); |
52 } | 57 } |
53 | 58 |
54 String result = XMLUtils.xpathString( | 59 String result = XMLUtils.xpathString( |
55 description, | 60 description, |
56 XPATH_RESULT, | 61 XPATH_RESULT, |
62 } | 67 } |
63 catch (ConnectionException ce) { | 68 catch (ConnectionException ce) { |
64 System.err.println(ce.getLocalizedMessage()); | 69 System.err.println(ce.getLocalizedMessage()); |
65 } | 70 } |
66 | 71 |
67 return null; | 72 throw new ServerException(ERROR_ADVANCE_ARTIFACT); |
68 } | 73 } |
69 } | 74 } |
70 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : | 75 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : |