Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  /*
   * JBoss, the OpenSource J2EE webOS
   *
   * Distributable under LGPL license.
   * See terms of license at gnu.org.
   */ 
  package org.jboss.security.plugins.audit;
  
 import java.util.List;
 
Manages a set of AuditContext

Author(s):
Anil Saldhana
Version:
$Revision$
Since:
Aug 22, 2006
 
 public class JBossAuditManager implements AuditManager
 {
    private static Logger log = Logger.getLogger(JBossAuditManager.class);
    
    
    private static AuditContext defaultContext = null;
    
    static
    {
        = new JBossAuditContext("Default_Context");
    }
 
    private String securityDomain;
    
    public JBossAuditManager(String secDomain)
    {
       this. = secDomain;
    }
    
    {
       if(ac == null)
       {
          ac = new JBossAuditContext();
          ApplicationPolicy ap = SecurityConfiguration.getApplicationPolicy();
          if(ap != null)
          {
             AuditInfo ai = ap.getAuditInfo();
             if(ai != null)
             {  
                AuditProviderEntry[] apeArr = ai.getAuditProviderEntry();
                List<AuditProviderEntrylist = Arrays.asList(apeArr);
                for(AuditProviderEntry ape:list)
                {
                   String pname = ape.getName();
                   try
                   {
                      ac.addProvider((AuditProvider) SecurityActions.loadClass(pname).newInstance());
                   }
                   catch (Exception e)
                   {
                      throw new RuntimeException(e);
                   } 
                }
             }
          }
       }
       if(ac == null)
       {
          if(.isTraceEnabled())
             .trace("No audit Context found for "++" ; defaulting to"
                   + " audit context for other");
          ac = ;
       }
       return ac;
    }
    
    public static AuditContext getAuditContext(String securityDomain)
    {
       AuditContext ac = (AuditContext).get(securityDomain);
       if(ac == null)
          ac = ;
       return ac;
    } 
    
    public static void addAuditContext(String securityDomainAuditContext ac)
   {
      .put(securityDomainac);
   }
   public void audit(AuditEvent ae)
   {
      AuditContext ac = null;
      try
      {
         ac = getAuditContext();
      }
      catch (PrivilegedActionException e)
      {
        throw new RuntimeException(e);
      }
      ac.audit(ae); 
      //Provide default JBoss trace logging
      if(ac !=  )
      {
         .audit(ae);
      }
   }
   public String getSecurityDomain()
   { 
      return this.;
   }
New to GrepCode? Check out our FAQ X