brooklyn-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From henev...@apache.org
Subject [2/6] incubator-brooklyn git commit: fix case where error is thrown by api
Date Fri, 19 Jun 2015 13:39:46 GMT
fix case where error is thrown by api


Project: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/commit/4d7505a0
Tree: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/tree/4d7505a0
Diff: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/diff/4d7505a0

Branch: refs/heads/master
Commit: 4d7505a0b437f4294576e19d491673c57e5c808a
Parents: 7262741
Author: Robert Moss <robertgmoss@gmail.com>
Authored: Mon Jun 15 17:42:37 2015 +0100
Committer: Robert Moss <robertgmoss@gmail.com>
Committed: Mon Jun 15 17:42:37 2015 +0100

----------------------------------------------------------------------
 .../src/main/java/brooklyn/rest/client/BrooklynApi.java       | 7 +++++--
 .../java/brooklyn/util/http/BuiltResponsePreservingError.java | 1 -
 2 files changed, 5 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/4d7505a0/usage/rest-client/src/main/java/brooklyn/rest/client/BrooklynApi.java
----------------------------------------------------------------------
diff --git a/usage/rest-client/src/main/java/brooklyn/rest/client/BrooklynApi.java b/usage/rest-client/src/main/java/brooklyn/rest/client/BrooklynApi.java
index fb2322c..c003d63 100644
--- a/usage/rest-client/src/main/java/brooklyn/rest/client/BrooklynApi.java
+++ b/usage/rest-client/src/main/java/brooklyn/rest/client/BrooklynApi.java
@@ -122,9 +122,12 @@ public class BrooklynApi {
             public Object invoke(Object proxy, Method method, Object[] args) throws Throwable
{                 
                 try {
                     Object result1 = method.invoke(result0, args);
+                    Class<?> type = String.class;
                     if (result1 instanceof Response) {
-                        String responseClass = method.getAnnotation(ApiOperation.class).responseClass();
-                        Class<?> type = Class.forName(responseClass);
+                        if(((Response)result1).getStatus()/100 == 2) {
+                           String responseClass = method.getAnnotation(ApiOperation.class).responseClass();
+                           type = Class.forName(responseClass);
+                        }
                         // wrap the original response so it self-closes
                         result1 = BuiltResponsePreservingError.copyResponseAndClose((Response)
result1, type);
                     }

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/4d7505a0/usage/rest-client/src/main/java/brooklyn/util/http/BuiltResponsePreservingError.java
----------------------------------------------------------------------
diff --git a/usage/rest-client/src/main/java/brooklyn/util/http/BuiltResponsePreservingError.java
b/usage/rest-client/src/main/java/brooklyn/util/http/BuiltResponsePreservingError.java
index de21dc9..c3ad96a 100644
--- a/usage/rest-client/src/main/java/brooklyn/util/http/BuiltResponsePreservingError.java
+++ b/usage/rest-client/src/main/java/brooklyn/util/http/BuiltResponsePreservingError.java
@@ -53,7 +53,6 @@ public class BuiltResponsePreservingError extends BuiltResponse {
             status = source.getStatus();
             headers.putAll(source.getHeaders());
             if (source instanceof org.jboss.resteasy.client.ClientResponse) {
-                // ClientResponse requires strong type info, which we don't yet have
                 entity = ((org.jboss.resteasy.client.ClientResponse<?>)source).getEntity(type);
             } else {
                 entity = source.getEntity();


Mime
View raw message