[jboss-cvs] JBossAS SVN: r67591 - projects/security/security-jboss-sx/trunk/jbosssx/src/main/org/jboss/security/authorization/resources.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Wed Nov 28 22:39:32 EST 2007


Author: anil.saldhana at jboss.com
Date: 2007-11-28 22:39:31 -0500 (Wed, 28 Nov 2007)
New Revision: 67591

Modified:
   projects/security/security-jboss-sx/trunk/jbosssx/src/main/org/jboss/security/authorization/resources/WebResource.java
Log:
set the response and audit

Modified: projects/security/security-jboss-sx/trunk/jbosssx/src/main/org/jboss/security/authorization/resources/WebResource.java
===================================================================
--- projects/security/security-jboss-sx/trunk/jbosssx/src/main/org/jboss/security/authorization/resources/WebResource.java	2007-11-29 03:39:14 UTC (rev 67590)
+++ projects/security/security-jboss-sx/trunk/jbosssx/src/main/org/jboss/security/authorization/resources/WebResource.java	2007-11-29 03:39:31 UTC (rev 67591)
@@ -21,9 +21,12 @@
   */
 package org.jboss.security.authorization.resources;
 
+import java.util.Enumeration;
 import java.util.Map;
 
 import javax.servlet.ServletRequest;
+import javax.servlet.ServletResponse;
+import javax.servlet.http.HttpServletRequest;
 
 import org.jboss.security.authorization.Resource;
 import org.jboss.security.authorization.ResourceType;
@@ -39,6 +42,7 @@
 public class WebResource extends JavaEEResource
 {  
    private ServletRequest servletRequest = null;
+   private ServletResponse servletResponse = null;
    
    private String canonicalRequestURI = null;
    /**
@@ -85,15 +89,70 @@
    public void setServletRequest(ServletRequest servletRequest)
    {
       this.servletRequest = servletRequest;
+   } 
+
+   public ServletResponse getServletResponse()
+   {
+      return servletResponse;
    }
 
+   public void setServletResponse(ServletResponse servletResponse)
+   {
+      this.servletResponse = servletResponse;
+   }
+
    public String toString()
    {
       StringBuffer buf = new StringBuffer();
       buf.append("[").append(getClass().getName()).append(":contextMap=").append(map).
       append("canonicalRequestURI=").append(this.canonicalRequestURI).
+      append("request=").append(deriveUsefulInfo()).
       append("CodeSource=").append(this.codeSource).
       append("]");
       return buf.toString();
    }
+   
+   private String deriveUsefulInfo()
+   {
+      if(servletRequest instanceof HttpServletRequest == false)
+         return " ";
+      
+      HttpServletRequest httpRequest = (HttpServletRequest) servletRequest;
+      StringBuilder sb = new StringBuilder();
+      sb.append("[").append(httpRequest.getContextPath());
+      sb.append(":cookies=").append(httpRequest.getCookies()).append(":headers=");
+      //Append Header information
+      Enumeration<?> en = httpRequest.getHeaderNames();
+      for(;en.hasMoreElements();)
+      {
+         String headerName = (String)en.nextElement();
+         sb.append(headerName).append("="); 
+         if(headerName.contains("authorization") == false)
+            sb.append(httpRequest.getHeader(headerName)).append(",");
+      }
+      sb.append("]");
+      //Append Request parameter information
+      sb.append("[parameters=");
+      Enumeration<?> enparam = httpRequest.getParameterNames();
+      for(;enparam.hasMoreElements();)
+      {
+         String paramName = (String)enparam.nextElement();
+         String[] paramValues = httpRequest.getParameterValues(paramName);
+         int len = paramValues != null ? paramValues.length : 0;
+         for(int i = 0 ; i < len ; i++)
+            sb.append(paramValues[i]).append("::"); 
+         sb.append(",");
+      } 
+      sb.append("][attributes=");
+      //Append Request attribute information
+      Enumeration<?> enu = httpRequest.getAttributeNames();
+      for(;enu.hasMoreElements();)
+      {
+         String attrName = (String)enu.nextElement();
+         sb.append(attrName).append("=");
+         sb.append(httpRequest.getAttribute(attrName)).append(",");
+      }
+      sb.append("]");
+      return sb.toString();
+   } 
 }
\ No newline at end of file




More information about the jboss-cvs-commits mailing list