summaryrefslogtreecommitdiff
path: root/qpid
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
commit6be80b8e052d8fcba568c33583f0555843f588e2 (patch)
treee0ce768fc1a015e94606456d2d50b6f3bec26b94 /qpid
parent8d65f4960fdaaed60c3bdd82dd8c4fd73a6bf5cf (diff)
downloadqpid-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.java16
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;
+ }
}