You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cxf.apache.org by ow...@apache.org on 2013/05/24 21:24:49 UTC
svn commit: r1486180 -
/cxf/trunk/services/sts/sts-core/src/main/java/org/apache/cxf/sts/claims/ClaimsManager.java
Author: owulff
Date: Fri May 24 19:24:49 2013
New Revision: 1486180
URL: http://svn.apache.org/r1486180
Log:
Allow continue processing ClaimsHandler even exception occured
Modified:
cxf/trunk/services/sts/sts-core/src/main/java/org/apache/cxf/sts/claims/ClaimsManager.java
Modified: cxf/trunk/services/sts/sts-core/src/main/java/org/apache/cxf/sts/claims/ClaimsManager.java
URL: http://svn.apache.org/viewvc/cxf/trunk/services/sts/sts-core/src/main/java/org/apache/cxf/sts/claims/ClaimsManager.java?rev=1486180&r1=1486179&r2=1486180&view=diff
==============================================================================
--- cxf/trunk/services/sts/sts-core/src/main/java/org/apache/cxf/sts/claims/ClaimsManager.java (original)
+++ cxf/trunk/services/sts/sts-core/src/main/java/org/apache/cxf/sts/claims/ClaimsManager.java Fri May 24 19:24:49 2013
@@ -47,6 +47,15 @@ public class ClaimsManager {
private List<ClaimsParser> claimParsers;
private List<ClaimsHandler> claimHandlers;
private List<URI> supportedClaimTypes = new ArrayList<URI>();
+ private boolean stopProcessingOnException = true;
+
+ public boolean isStopProcessingOnException() {
+ return stopProcessingOnException;
+ }
+
+ public void setStopProcessingOnException(boolean stopProcessingOnException) {
+ this.stopProcessingOnException = stopProcessingOnException;
+ }
public List<URI> getSupportedClaimTypes() {
return supportedClaimTypes;
@@ -127,7 +136,18 @@ public class ClaimsManager {
if (supportedClaims.isEmpty()) {
continue;
}
- ClaimCollection claimCollection = handler.retrieveClaimValues(supportedClaims, parameters);
+
+ ClaimCollection claimCollection = null;
+ try {
+ claimCollection = handler.retrieveClaimValues(claims, parameters);
+ } catch (Exception ex) {
+ LOG.log(Level.INFO, "Failed retrieving claims from ClaimsHandler "
+ + handler.getClass().getName(), ex);
+ if (this.isStopProcessingOnException()) {
+ throw ex;
+ }
+ }
+
if (claimCollection != null && claimCollection.size() != 0) {
returnCollection.addAll(claimCollection);
}