[jboss-cvs] Picketlink SVN: r1295 - product/trunk/picketlink-core/src/main/java/org/picketlink/identity/federation/core/factories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Fri Oct 7 10:48:16 EDT 2011


Author: anil.saldhana at jboss.com
Date: 2011-10-07 10:48:15 -0400 (Fri, 07 Oct 2011)
New Revision: 1295

Modified:
   product/trunk/picketlink-core/src/main/java/org/picketlink/identity/federation/core/factories/JBossAuthCacheInvalidationFactory.java
Log:
PLFED-237: merge in PLFED-236 change

Modified: product/trunk/picketlink-core/src/main/java/org/picketlink/identity/federation/core/factories/JBossAuthCacheInvalidationFactory.java
===================================================================
--- product/trunk/picketlink-core/src/main/java/org/picketlink/identity/federation/core/factories/JBossAuthCacheInvalidationFactory.java	2011-10-06 22:27:22 UTC (rev 1294)
+++ product/trunk/picketlink-core/src/main/java/org/picketlink/identity/federation/core/factories/JBossAuthCacheInvalidationFactory.java	2011-10-07 14:48:15 UTC (rev 1295)
@@ -29,6 +29,8 @@
 import javax.management.MBeanServer;
 import javax.management.ObjectName;
 
+import org.apache.log4j.Logger;
+
 /**
  * <p>
  * A factory that is used to obtain an expiration policy of type {@link TimeCacheExpiry}
@@ -49,7 +51,7 @@
    {
       return ExpiringPrincipalCacheInvalidation.get();
    }
-   
+
    public interface TimeCacheExpiry
    {
       /**
@@ -58,63 +60,86 @@
        * @param expiry when to expire the principal and hence the subject
        * @param principal the principal which needs to be expired
        */
-      void register( String securityDomain, Date expiry, Principal principal );
+      void register(String securityDomain, Date expiry, Principal principal);
    }
-   
+
    protected static class ExpiringPrincipalCacheInvalidation implements TimeCacheExpiry
    {
+      private static Logger log = Logger.getLogger(ExpiringPrincipalCacheInvalidation.class);
+
+      private final boolean trace = log.isTraceEnabled();
+
       protected static ExpiringPrincipalCacheInvalidation _instance = null;
-      
+
       protected static String objectName = "jboss.security:service=JaasSecurityManager";
-      
+
       protected static Timer timer = new Timer();
-      
+
       protected ExpiringPrincipalCacheInvalidation()
-      { 
+      {
       }
-      
+
       protected static ExpiringPrincipalCacheInvalidation get()
       {
-         if( _instance == null )
+         if (_instance == null)
             _instance = new ExpiringPrincipalCacheInvalidation();
          return _instance;
       }
-      
-      protected static void setObjectName( String oName )
+
+      protected static void setObjectName(String oName)
       {
          objectName = oName;
       }
-      
-      public void register( final String securityDomain, final Date expiry, final Principal principal )
-      { 
+
+      public void register(final String securityDomain, final Date expiry, final Principal principal)
+      {
          try
-         {  
-            timer.schedule( new TimerTask()
-            { 
+         {
+            timer.purge();
+         }
+         catch (Exception e)
+         {
+            if (trace)
+            {
+               log.trace("Exception in purging timer tasks:", e);
+            }
+         }
+         try
+         {
+            timer.schedule(new TimerTask()
+            {
                @Override
                public void run()
                {
                   try
                   {
-                     ObjectName on = new ObjectName( objectName );
+                     ObjectName on = new ObjectName(objectName);
                      MBeanServer server = SecurityActions.getJBossMBeanServer();
-                     Object[] obj = new Object[] { securityDomain, principal };
-                     String[] sig = new String[]{ "java.lang.String", "java.security.Principal" }; 
-                     
+                     Object[] obj = new Object[]
+                     {securityDomain, principal};
+                     String[] sig = new String[]
+                     {"java.lang.String", "java.security.Principal"};
+
                      //Flush the Authentication Cache
-                     server.invoke( on,"flushAuthenticationCache", obj, sig ); 
+                     server.invoke(on, "flushAuthenticationCache", obj, sig);
                   }
-                  catch ( Exception e)
+                  catch (Exception e)
                   {
-                     throw new RuntimeException( e );
+                     if (trace)
+                     {
+                        log.trace("Exception in scheduling timer:", e);
+                     }
                   }
                }
-            }, expiry );
+            }, expiry);
          }
-         catch ( Exception e )
+         catch (Exception e)
          {
-            throw new RuntimeException( e );
-         }      
-      } 
+            if (trace)
+            {
+               log.trace("Exception in scheduling timer:", e);
+            }
+         }
+      }
    }
 }
\ No newline at end of file


Property changes on: product/trunk/picketlink-core/src/main/java/org/picketlink/identity/federation/core/factories/JBossAuthCacheInvalidationFactory.java
___________________________________________________________________
Added: svn:mergeinfo
   + /federation/trunk/picketlink-bindings/src/main/java/org/picketlink/identity/federation/core/factories/JBossAuthCacheInvalidationFactory.java:1159-1173,1192-1228
/federation/trunk/picketlink-bindings-jboss/src/main/java/org/picketlink/identity/federation/core/factories/JBossAuthCacheInvalidationFactory.java:1159-1173,1192-1228
/federation/trunk/picketlink-fed-api/src/main/java/org/picketlink/identity/federation/core/factories/JBossAuthCacheInvalidationFactory.java:1152-1154,1159-1173,1192-1228
/federation/trunk/picketlink-fed-core/src/main/java/org/picketlink/identity/federation/core/factories/JBossAuthCacheInvalidationFactory.java:1095-1294
/federation/trunk/picketlink-fed-model/src/main/java/org/picketlink/identity/federation/core/factories/JBossAuthCacheInvalidationFactory.java:1152-1154,1159-1173
/federation/trunk/picketlink-web/src/main/java/org/picketlink/identity/federation/core/factories/JBossAuthCacheInvalidationFactory.java:1152-1173



More information about the jboss-cvs-commits mailing list