weaver      2004/06/23 11:36:53

  Modified:    
components/registry/src/java/org/apache/jetspeed/components/portletentity
                        PortletEntityAccessComponentImpl.java
  Log:
  made into PStore listener to as to be able to remove PortletEntities from the cache 
when they are deleted
  
  Revision  Changes    Path
  1.20      +227 -2    
jakarta-jetspeed-2/components/registry/src/java/org/apache/jetspeed/components/portletentity/PortletEntityAccessComponentImpl.java
  
  Index: PortletEntityAccessComponentImpl.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-jetspeed-2/components/registry/src/java/org/apache/jetspeed/components/portletentity/PortletEntityAccessComponentImpl.java,v
  retrieving revision 1.19
  retrieving revision 1.20
  diff -u -r1.19 -r1.20
  --- PortletEntityAccessComponentImpl.java     23 Jun 2004 01:54:46 -0000      1.19
  +++ PortletEntityAccessComponentImpl.java     23 Jun 2004 18:36:52 -0000      1.20
  @@ -22,6 +22,8 @@
   import org.apache.jetspeed.components.persistence.Storeable;
   import org.apache.jetspeed.components.persistence.store.Filter;
   import org.apache.jetspeed.components.persistence.store.PersistenceStore;
  +import org.apache.jetspeed.components.persistence.store.PersistenceStoreEvent;
  +import 
org.apache.jetspeed.components.persistence.store.PersistenceStoreEventListener;
   import org.apache.jetspeed.components.persistence.store.Transaction;
   import org.apache.jetspeed.components.portletregistry.PortletRegistryComponent;
   import org.apache.jetspeed.om.common.portlet.MutablePortletEntity;
  @@ -32,6 +34,7 @@
   import org.apache.pluto.om.entity.PortletEntity;
   import org.apache.pluto.om.entity.PortletEntityCtrl;
   import org.apache.pluto.om.portlet.PortletDefinition;
  +import org.picocontainer.Startable;
   
   /**
    * <p>
  @@ -42,7 +45,7 @@
    * @version $Id$
    *
    */
  -public class PortletEntityAccessComponentImpl implements 
PortletEntityAccessComponent
  +public class PortletEntityAccessComponentImpl implements 
PortletEntityAccessComponent, PersistenceStoreEventListener, Startable
   {
       protected final static Log log = 
LogFactory.getLog(PortletEntityAccessComponentImpl.class);
   
  @@ -65,6 +68,7 @@
       {
           this.persistenceStore = persistenceStore;
           this.registry = registry;
  +        
       }
       
   
  @@ -243,6 +247,8 @@
           {
               prepareTransaction(store);
               
  +            entityCache.remove(portletEntity.getId());
  +            
               store.deletePersistent(portletEntity);            
   
               store.getTransaction().checkpoint();
  @@ -258,6 +264,11 @@
           }
   
       }
  +    
  +    public void removeFromCache(PortletEntity entity)
  +    {
  +       entityCache.remove(entity.getId());
  +    }
   
       /**
        * @see 
org.apache.jetspeed.entity.PortletEntityAccessComponent#storePortletEntity(org.apache.pluto.om.entity.PortletEntity)
  @@ -311,5 +322,219 @@
       protected PersistenceStore getPersistenceStore()
       {
           return persistenceStore;
  +    }
  +    /**
  +     * <p>
  +     * afterClose
  +     * </p>
  +     *
  +     * @see 
org.apache.jetspeed.components.persistence.store.PersistenceStoreEventListener#afterClose(org.apache.jetspeed.components.persistence.store.PersistenceStoreEvent)
  +     * @param event
  +     */
  +    public void afterClose( PersistenceStoreEvent event )
  +    {
  +        // TODO Auto-generated method stub
  +
  +    }
  +    /**
  +     * <p>
  +     * afterDeletePersistent
  +     * </p>
  +     *
  +     * @see 
org.apache.jetspeed.components.persistence.store.PersistenceStoreEventListener#afterDeletePersistent(org.apache.jetspeed.components.persistence.store.PersistenceStoreEvent)
  +     * @param event
  +     */
  +    public void afterDeletePersistent( PersistenceStoreEvent event )
  +    {
  +        // TODO Auto-generated method stub
  +
  +    }
  +    /**
  +     * <p>
  +     * afterLookup
  +     * </p>
  +     *
  +     * @see 
org.apache.jetspeed.components.persistence.store.PersistenceStoreEventListener#afterLookup(org.apache.jetspeed.components.persistence.store.PersistenceStoreEvent)
  +     * @param event
  +     */
  +    public void afterLookup( PersistenceStoreEvent event )
  +    {
  +        // TODO Auto-generated method stub
  +
  +    }
  +    /**
  +     * <p>
  +     * afterMakePersistent
  +     * </p>
  +     *
  +     * @see 
org.apache.jetspeed.components.persistence.store.PersistenceStoreEventListener#afterMakePersistent(org.apache.jetspeed.components.persistence.store.PersistenceStoreEvent)
  +     * @param event
  +     */
  +    public void afterMakePersistent( PersistenceStoreEvent event )
  +    {
  +        // TODO Auto-generated method stub
  +
  +    }
  +    /**
  +     * <p>
  +     * beforeClose
  +     * </p>
  +     *
  +     * @see 
org.apache.jetspeed.components.persistence.store.PersistenceStoreEventListener#beforeClose(org.apache.jetspeed.components.persistence.store.PersistenceStoreEvent)
  +     * @param event
  +     */
  +    public void beforeClose( PersistenceStoreEvent event )
  +    {
  +        // TODO Auto-generated method stub
  +
  +    }
  +    /**
  +     * <p>
  +     * beforeDeletePersistent
  +     * </p>
  +     * Removes the entity being deleted from the internal entity cache.
  +     *
  +     * @see 
org.apache.jetspeed.components.persistence.store.PersistenceStoreEventListener#beforeDeletePersistent(org.apache.jetspeed.components.persistence.store.PersistenceStoreEvent)
  +     * @param event
  +     */
  +    public void beforeDeletePersistent( PersistenceStoreEvent event )
  +    {
  +        Object target = event.getTarget();
  +        if(target != null && target instanceof MutablePortletEntity)
  +        {
  +            MutablePortletEntity entity = (MutablePortletEntity) target;
  +            removeFromCache(entity);            
  +        }
  +
  +    }
  +    /**
  +     * <p>
  +     * beforeLookup
  +     * </p>
  +     *
  +     * @see 
org.apache.jetspeed.components.persistence.store.PersistenceStoreEventListener#beforeLookup(org.apache.jetspeed.components.persistence.store.PersistenceStoreEvent)
  +     * @param event
  +     */
  +    public void beforeLookup( PersistenceStoreEvent event )
  +    {
  +        // TODO Auto-generated method stub
  +
  +    }
  +    /**
  +     * <p>
  +     * beforeMakePersistent
  +     * </p>
  +     *
  +     * @see 
org.apache.jetspeed.components.persistence.store.PersistenceStoreEventListener#beforeMakePersistent(org.apache.jetspeed.components.persistence.store.PersistenceStoreEvent)
  +     * @param event
  +     */
  +    public void beforeMakePersistent( PersistenceStoreEvent event )
  +    {
  +        // TODO Auto-generated method stub
  +
  +    }
  +    /**
  +     * <p>
  +     * afterBegin
  +     * </p>
  +     *
  +     * @see 
org.apache.jetspeed.components.persistence.store.TransactionEventListener#afterBegin(org.apache.jetspeed.components.persistence.store.PersistenceStoreEvent)
  +     * @param event
  +     */
  +    public void afterBegin( PersistenceStoreEvent event )
  +    {
  +        // TODO Auto-generated method stub
  +
  +    }
  +    /**
  +     * <p>
  +     * afterCommit
  +     * </p>
  +     *
  +     * @see 
org.apache.jetspeed.components.persistence.store.TransactionEventListener#afterCommit(org.apache.jetspeed.components.persistence.store.PersistenceStoreEvent)
  +     * @param event
  +     */
  +    public void afterCommit( PersistenceStoreEvent event )
  +    {
  +        // TODO Auto-generated method stub
  +
  +    }
  +    /**
  +     * <p>
  +     * afterRollback
  +     * </p>
  +     *
  +     * @see 
org.apache.jetspeed.components.persistence.store.TransactionEventListener#afterRollback(org.apache.jetspeed.components.persistence.store.PersistenceStoreEvent)
  +     * @param event
  +     */
  +    public void afterRollback( PersistenceStoreEvent event )
  +    {
  +        // TODO Auto-generated method stub
  +
  +    }
  +    /**
  +     * <p>
  +     * beforeBegin
  +     * </p>
  +     *
  +     * @see 
org.apache.jetspeed.components.persistence.store.TransactionEventListener#beforeBegin(org.apache.jetspeed.components.persistence.store.PersistenceStoreEvent)
  +     * @param event
  +     */
  +    public void beforeBegin( PersistenceStoreEvent event )
  +    {
  +        // TODO Auto-generated method stub
  +
  +    }
  +    /**
  +     * <p>
  +     * beforeCommit
  +     * </p>
  +     *
  +     * @see 
org.apache.jetspeed.components.persistence.store.TransactionEventListener#beforeCommit(org.apache.jetspeed.components.persistence.store.PersistenceStoreEvent)
  +     * @param event
  +     */
  +    public void beforeCommit( PersistenceStoreEvent event )
  +    {
  +        // TODO Auto-generated method stub
  +
  +    }
  +    /**
  +     * <p>
  +     * beforeRollback
  +     * </p>
  +     *
  +     * @see 
org.apache.jetspeed.components.persistence.store.TransactionEventListener#beforeRollback(org.apache.jetspeed.components.persistence.store.PersistenceStoreEvent)
  +     * @param event
  +     */
  +    public void beforeRollback( PersistenceStoreEvent event )
  +    {
  +        // TODO Auto-generated method stub
  +
  +    }
  +    /**
  +     * <p>
  +     * start
  +     * </p>
  +     *
  +     * @see org.picocontainer.Startable#start()
  +     * 
  +     */
  +    public void start()
  +    {
  +        persistenceStore.addEventListener(this);
  +
  +    }
  +    /**
  +     * <p>
  +     * stop
  +     * </p>
  +     *
  +     * @see org.picocontainer.Startable#stop()
  +     * 
  +     */
  +    public void stop()
  +    {
  +        // TODO Auto-generated method stub
  +
       }
   }
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to