Repository: cxf
Updated Branches:
  refs/heads/master d322272a5 -> 3c0681f2d


[CXF-6561] Removing catch blocks from ResourceOwnerGramtHandler


Project: http://git-wip-us.apache.org/repos/asf/cxf/repo
Commit: http://git-wip-us.apache.org/repos/asf/cxf/commit/3c0681f2
Tree: http://git-wip-us.apache.org/repos/asf/cxf/tree/3c0681f2
Diff: http://git-wip-us.apache.org/repos/asf/cxf/diff/3c0681f2

Branch: refs/heads/master
Commit: 3c0681f2d546d096c8ce63f11a4920a37e1ac428
Parents: d322272
Author: Sergey Beryozkin <sberyoz...@gmail.com>
Authored: Fri Aug 28 13:27:50 2015 +0100
Committer: Sergey Beryozkin <sberyoz...@gmail.com>
Committed: Fri Aug 28 13:27:50 2015 +0100

----------------------------------------------------------------------
 .../grants/owner/ResourceOwnerGrantHandler.java    | 17 ++++-------------
 .../oauth2/services/AccessTokenService.java        | 15 +++++++++++----
 2 files changed, 15 insertions(+), 17 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cxf/blob/3c0681f2/rt/rs/security/oauth-parent/oauth2/src/main/java/org/apache/cxf/rs/security/oauth2/grants/owner/ResourceOwnerGrantHandler.java
----------------------------------------------------------------------
diff --git 
a/rt/rs/security/oauth-parent/oauth2/src/main/java/org/apache/cxf/rs/security/oauth2/grants/owner/ResourceOwnerGrantHandler.java
 
b/rt/rs/security/oauth-parent/oauth2/src/main/java/org/apache/cxf/rs/security/oauth2/grants/owner/ResourceOwnerGrantHandler.java
index f15fc7f..19e0f6b 100644
--- 
a/rt/rs/security/oauth-parent/oauth2/src/main/java/org/apache/cxf/rs/security/oauth2/grants/owner/ResourceOwnerGrantHandler.java
+++ 
b/rt/rs/security/oauth-parent/oauth2/src/main/java/org/apache/cxf/rs/security/oauth2/grants/owner/ResourceOwnerGrantHandler.java
@@ -47,20 +47,11 @@ public class ResourceOwnerGrantHandler extends 
AbstractGrantHandler {
             throw new OAuthServiceException(
                  new OAuthError(OAuthConstants.INVALID_REQUEST));
         }
-        UserSubject subject = null;
-        try {
-            subject = loginHandler.createSubject(ownerName, ownerPassword);
-            if (subject == null) {
-                throw new OAuthServiceException(OAuthConstants.INVALID_GRANT);
-            }
-        } catch (OAuthServiceException ex) { 
-            throw ex;
-        } catch (RuntimeException ex) { 
-            throw new OAuthServiceException(OAuthConstants.INVALID_GRANT, ex);
+        UserSubject subject = loginHandler.createSubject(ownerName, 
ownerPassword);
+        if (subject == null) {
+            throw new OAuthServiceException(OAuthConstants.INVALID_GRANT);
         }
-        return doCreateAccessToken(client, 
-                                   subject,
-                                   params);
+        return doCreateAccessToken(client, subject, params);
     }
     
     public ResourceOwnerLoginHandler getLoginHandler() {

http://git-wip-us.apache.org/repos/asf/cxf/blob/3c0681f2/rt/rs/security/oauth-parent/oauth2/src/main/java/org/apache/cxf/rs/security/oauth2/services/AccessTokenService.java
----------------------------------------------------------------------
diff --git 
a/rt/rs/security/oauth-parent/oauth2/src/main/java/org/apache/cxf/rs/security/oauth2/services/AccessTokenService.java
 
b/rt/rs/security/oauth-parent/oauth2/src/main/java/org/apache/cxf/rs/security/oauth2/services/AccessTokenService.java
index af94464..8af601a 100644
--- 
a/rt/rs/security/oauth-parent/oauth2/src/main/java/org/apache/cxf/rs/security/oauth2/services/AccessTokenService.java
+++ 
b/rt/rs/security/oauth-parent/oauth2/src/main/java/org/apache/cxf/rs/security/oauth2/services/AccessTokenService.java
@@ -28,6 +28,7 @@ import javax.ws.rs.Consumes;
 import javax.ws.rs.POST;
 import javax.ws.rs.Path;
 import javax.ws.rs.Produces;
+import javax.ws.rs.WebApplicationException;
 import javax.ws.rs.core.HttpHeaders;
 import javax.ws.rs.core.MultivaluedMap;
 import javax.ws.rs.core.Response;
@@ -99,8 +100,8 @@ public class AccessTokenService extends AbstractTokenService 
{
             checkAudience(params);
         } catch (OAuthServiceException ex) {
             return super.createErrorResponseFromBean(ex.getError());
-        }
-        
+        } 
+                
         // Find the grant handler
         AccessTokenGrantHandler handler = findGrantHandler(params);
         if (handler == null) {
@@ -111,8 +112,14 @@ public class AccessTokenService extends 
AbstractTokenService {
         ServerAccessToken serverToken = null;
         try {
             serverToken = handler.createAccessToken(client, params);
-        } catch (OAuthServiceException ex) {
-            return handleException(ex, OAuthConstants.INVALID_GRANT);
+        } catch (WebApplicationException ex) {
+            throw ex;
+        } catch (RuntimeException ex) {
+            // This is done to bypass a Check-Style 
+            // restriction on a number of return statements 
+            OAuthServiceException oauthEx = ex instanceof 
OAuthServiceException 
+                ? (OAuthServiceException)ex : new OAuthServiceException(ex);
+            return handleException(oauthEx, OAuthConstants.INVALID_GRANT);
         }
         if (serverToken == null) {
             return createErrorResponse(params, OAuthConstants.INVALID_GRANT);

Reply via email to