luehe 2004/10/25 14:18:49 Modified: catalina/src/share/org/apache/catalina/security SecurityUtil.java Log: Call session.setAttribute(Globals.SUBJECT_ATTR, subject) only if necessary, i.e, only if the session does not already contain such an attribute, allowing for session persistence optimizations by persisting only those sessions that have actually changed (i.e., whose setAttribute() or removeAttribute() have been called) since the sessions were last persisted. Revision Changes Path 1.13 +8 -9 jakarta-tomcat-catalina/catalina/src/share/org/apache/catalina/security/SecurityUtil.java Index: SecurityUtil.java =================================================================== RCS file: /home/cvs/jakarta-tomcat-catalina/catalina/src/share/org/apache/catalina/security/SecurityUtil.java,v retrieving revision 1.12 retrieving revision 1.13 diff -u -r1.12 -r1.13 --- SecurityUtil.java 20 Aug 2004 14:43:17 -0000 1.12 +++ SecurityUtil.java 25 Oct 2004 21:18:49 -0000 1.13 @@ -224,7 +224,7 @@ * @param targetArguments <code>Object</code> array contains the * runtime parameters instance. * @param principal the <code>Principal</code> to which the security - * privilege apply.. + * privilege applies */ private static void execute(final Method method, final Object targetObject, @@ -251,18 +251,17 @@ if (session != null){ subject = (Subject)session.getAttribute(Globals.SUBJECT_ATTR); - } - if (subject == null){ - subject = new Subject(); + if (subject == null){ + subject = new Subject(); - if (principal != null){ - subject.getPrincipals().add(principal); + if (principal != null){ + subject.getPrincipals().add(principal); + } + + session.setAttribute(Globals.SUBJECT_ATTR, subject); } } - - if (session != null) - session.setAttribute(Globals.SUBJECT_ATTR, subject); } Subject.doAsPrivileged(subject, pea, null);
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]