javadoc updates and added changes.txt file
git-svn-id: https://svn.apache.org/repos/asf/incubator/jsecurity/trunk@711061 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/changes.txt b/changes.txt
new file mode 100644
index 0000000..ee1e27f
--- /dev/null
+++ b/changes.txt
@@ -0,0 +1,11 @@
+
+[0.9 RC2]
+
+* DelegatingSubject is now still usable after it is logged out (no invalid exceptions thrown).
+ The Subject is now just considered 'anonymous' again at that point.
+
+!!! API CHANGES !!!
+RememberMeManager
+
+
+
diff --git a/src/org/jsecurity/subject/DelegatingSubject.java b/src/org/jsecurity/subject/DelegatingSubject.java
index e1667bd..7503487 100644
--- a/src/org/jsecurity/subject/DelegatingSubject.java
+++ b/src/org/jsecurity/subject/DelegatingSubject.java
@@ -238,15 +238,19 @@
PrincipalCollection principals = authcSecCtx.getPrincipals();
if (principals == null || principals.isEmpty()) {
String msg = "Principals returned from securityManager.login( token ) returned a null or " +
- "empty value. This value must be non null, and if a collection, the collection must " +
- "be populated with one or more elements. Please check the SecurityManager " +
- "implementation to ensure this happens after a successful login attempt.";
+ "empty value. This value must be non null and populated with one or more elements. " +
+ "Please check the SecurityManager implementation to ensure this happens after a " +
+ "successful login attempt.";
throw new IllegalStateException(msg);
}
this.principals = principals;
Session session = authcSecCtx.getSession(false);
- if (session != null && !(session instanceof StoppingAwareProxiedSession)) {
- this.session = new StoppingAwareProxiedSession(session, this);
+ if (session != null) {
+ if (session instanceof StoppingAwareProxiedSession) {
+ this.session = session;
+ } else {
+ this.session = new StoppingAwareProxiedSession(session, this);
+ }
} else {
this.session = null;
}