[java-identity-provider COMMIT] in /trunk: idp-profile-api/src/main/java/net/shibboleth/idp/profile/IdPAuditFields.ja...

noreply at shibboleth.net noreply at shibboleth.net
Fri Aug 15 16:37:28 EDT 2014


Author: scantor
Date: Fri Aug 15 16:37:28 2014
New Revision: 6426

URL: http://svn.shibboleth.net/view/java-identity-provider?rev=6426&view=rev
Log:
IDP-375 - event ID field

Modified:
    trunk/idp-profile-api/src/main/java/net/shibboleth/idp/profile/IdPAuditFields.java
    trunk/idp-profile-impl/src/main/java/net/shibboleth/idp/profile/audit/impl/WriteAuditLog.java

Modified: trunk/idp-profile-api/src/main/java/net/shibboleth/idp/profile/IdPAuditFields.java
URL: http://svn.shibboleth.net/view/java-identity-provider/trunk/idp-profile-api/src/main/java/net/shibboleth/idp/profile/IdPAuditFields.java?rev=6426&r1=6425&r2=6426&view=diff
==============================================================================
--- trunk/idp-profile-api/src/main/java/net/shibboleth/idp/profile/IdPAuditFields.java (original)
+++ trunk/idp-profile-api/src/main/java/net/shibboleth/idp/profile/IdPAuditFields.java Fri Aug 15 16:37:28 2014
@@ -29,8 +29,8 @@
     /** Event timestamp field. */
     @Nonnull @NotEmpty public static final String EVENT_TIME = "T";
 
-    /** Exception type field. */
-    @Nonnull @NotEmpty public static final String EXCEPTION_TYPE = "E";
+    /** Event type field. */
+    @Nonnull @NotEmpty public static final String EVENT_TYPE = "e";
 
     /** URL field. */
     @Nonnull @NotEmpty public static final String URL = "URL";

Modified: trunk/idp-profile-impl/src/main/java/net/shibboleth/idp/profile/audit/impl/WriteAuditLog.java
URL: http://svn.shibboleth.net/view/java-identity-provider/trunk/idp-profile-impl/src/main/java/net/shibboleth/idp/profile/audit/impl/WriteAuditLog.java?rev=6426&r1=6425&r2=6426&view=diff
==============================================================================
--- trunk/idp-profile-impl/src/main/java/net/shibboleth/idp/profile/audit/impl/WriteAuditLog.java (original)
+++ trunk/idp-profile-impl/src/main/java/net/shibboleth/idp/profile/audit/impl/WriteAuditLog.java Fri Aug 15 16:37:28 2014
@@ -28,6 +28,7 @@
 import net.shibboleth.idp.profile.AbstractProfileAction;
 import net.shibboleth.idp.profile.IdPAuditFields;
 import net.shibboleth.idp.profile.context.AuditContext;
+import net.shibboleth.idp.profile.context.SpringRequestContext;
 import net.shibboleth.utilities.java.support.annotation.constraint.NonnullElements;
 import net.shibboleth.utilities.java.support.annotation.constraint.NotEmpty;
 import net.shibboleth.utilities.java.support.annotation.constraint.NotLive;
@@ -42,9 +43,12 @@
 import org.joda.time.format.DateTimeFormatter;
 import org.joda.time.format.ISODateTimeFormat;
 import org.opensaml.messaging.context.navigate.ChildContextLookup;
+import org.opensaml.profile.action.EventIds;
 import org.opensaml.profile.context.ProfileRequestContext;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
+import org.springframework.webflow.execution.Event;
+import org.springframework.webflow.execution.RequestContext;
 
 import com.google.common.base.Function;
 import com.google.common.base.Strings;
@@ -75,6 +79,9 @@
 
     /** The AuditContext to operate on. */
     @Nullable private AuditContext auditCtx;
+
+    /** The Spring RequestContext to operate on. */
+    @Nullable private RequestContext requestContext;
     
     /** HttpServletRequest object. */
     @Nullable private HttpServletRequest httpRequest;
@@ -174,6 +181,10 @@
         }
         
         auditCtx = auditContextLookupStrategy.apply(profileRequestContext);
+        final SpringRequestContext springContext = profileRequestContext.getSubcontext(SpringRequestContext.class);
+        if (springContext != null) {
+            requestContext = springContext.getRequestContext();
+        }
         httpRequest = getHttpServletRequest();
         return true;
     }
@@ -193,6 +204,11 @@
                     final String field = token.substring(1);
                     if (IdPAuditFields.EVENT_TIME.equals(field)) {
                         entry.append(new DateTime().toString(v2Formatter.withZone(DateTimeZone.UTC)));
+                    } else if (IdPAuditFields.EVENT_TYPE.equals(field) && requestContext != null) {
+                        final Event event = requestContext.getCurrentEvent();
+                        if (event != null && !event.getId().equals(EventIds.PROCEED_EVENT_ID)) {
+                            entry.append(event.getId());
+                        }
                     } else if (IdPAuditFields.PROFILE.equals(field)) {
                         entry.append(profileRequestContext.getProfileId());
                     } else if (IdPAuditFields.REMOTE_ADDR.equals(field) && httpRequest != null) {



More information about the commits mailing list