diff options
| author | Robert Gemmell <robbie@apache.org> | 2012-08-27 15:56:23 +0000 |
|---|---|---|
| committer | Robert Gemmell <robbie@apache.org> | 2012-08-27 15:56:23 +0000 |
| commit | 6be80b8e052d8fcba568c33583f0555843f588e2 (patch) | |
| tree | e0ce768fc1a015e94606456d2d50b6f3bec26b94 /qpid | |
| parent | 8d65f4960fdaaed60c3bdd82dd8c4fd73a6bf5cf (diff) | |
| download | qpid-python-6be80b8e052d8fcba568c33583f0555843f588e2.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@1377723 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid')
| -rw-r--r-- | qpid/java/broker/src/main/java/org/apache/qpid/server/security/auth/AuthenticationResult.java | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/qpid/java/broker/src/main/java/org/apache/qpid/server/security/auth/AuthenticationResult.java b/qpid/java/broker/src/main/java/org/apache/qpid/server/security/auth/AuthenticationResult.java index a49dd6793f..09bf6cf3b1 100644 --- a/qpid/java/broker/src/main/java/org/apache/qpid/server/security/auth/AuthenticationResult.java +++ b/qpid/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; + } } |
