summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobert Gemmell <robbie@apache.org>2012-08-27 15:56:23 +0000
committerRobert Gemmell <robbie@apache.org>2012-08-27 15:56:23 +0000
commit3de48cb0769eac9b8db9e06c2f35a01c2c92bd94 (patch)
tree8bdd9e996e288d3d08142d83cb84aefe173e7a65
parent19e03803a04dc3a09d37d8017f8eae0d4bf61832 (diff)
downloadqpid-python-3de48cb0769eac9b8db9e06c2f35a01c2c92bd94.tar.gz
QPID-4237: added convenience method to AuthenticatedResult to facilitate implementation of third party authentication managers.
Applied patch from Philip Harvey <phil@philharveyonline.com> git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1377723 13f79535-47bb-0310-9956-ffa450edef68
-rw-r--r--java/broker/src/main/java/org/apache/qpid/server/security/auth/AuthenticationResult.java16
1 files changed, 13 insertions, 3 deletions
diff --git a/java/broker/src/main/java/org/apache/qpid/server/security/auth/AuthenticationResult.java b/java/broker/src/main/java/org/apache/qpid/server/security/auth/AuthenticationResult.java
index a49dd6793f..09bf6cf3b1 100644
--- a/java/broker/src/main/java/org/apache/qpid/server/security/auth/AuthenticationResult.java
+++ b/java/broker/src/main/java/org/apache/qpid/server/security/auth/AuthenticationResult.java
@@ -64,6 +64,7 @@ public class AuthenticationResult
private final byte[] _challenge;
private final Exception _cause;
private final Set<Principal> _principals = new HashSet<Principal>();
+ private final Principal _mainPrincipal;
public AuthenticationResult(final AuthenticationStatus status)
{
@@ -81,6 +82,7 @@ public class AuthenticationResult
_principals.addAll(otherPrincipals);
_principals.remove(mainPrincipal);
_principals.add(specialQpidAuthenticatedPrincipal);
+ _mainPrincipal = mainPrincipal;
_status = AuthenticationStatus.SUCCESS;
_challenge = null;
@@ -92,6 +94,7 @@ public class AuthenticationResult
_challenge = challenge;
_status = status;
_cause = null;
+ _mainPrincipal = null;
}
public AuthenticationResult(final AuthenticationStatus error, final Exception cause)
@@ -99,6 +102,7 @@ public class AuthenticationResult
_status = error;
_challenge = null;
_cause = cause;
+ _mainPrincipal = null;
}
public AuthenticationResult(final byte[] challenge, final AuthenticationStatus status, final Exception cause)
@@ -108,9 +112,10 @@ public class AuthenticationResult
throw new IllegalArgumentException("Successful authentication requires at least one principal");
}
- this._status = status;
- this._challenge = challenge;
- this._cause = cause;
+ _status = status;
+ _challenge = challenge;
+ _cause = cause;
+ _mainPrincipal = null;
}
public Exception getCause()
@@ -132,4 +137,9 @@ public class AuthenticationResult
{
return _principals;
}
+
+ public Principal getMainPrincipal()
+ {
+ return _mainPrincipal;
+ }
}