Jetspeed Proposal: 0002 LAST MODIFIED: $Date$ AUTHOR: burton@apache.org STATUS: DONE ******************************************************************************** * WARNING: THIS DOCUMENT WAS INITIALLY A PROPOSAL. PLEASE CHECK THE DATE AS * * THIS MAY HAVE BECOME OLD. * ******************************************************************************** The recent OCS and RSS expiration problems (remote RSS URLs reporting incorrect 'Last-Modified' info) prompted this e-mail. It is a new mechanism to expire content. Not really new but like a next generation. --- Java changes -- // new interface /** I don't think I like name... someone propose another one please */ public interface Expire { /** Return true if this object has expired. */ public boolean isExpired(); public long getCreationTime(); public void setProperty( String name, String value ); public String getProperty( String name ) } //changes to Cacheable - public boolean expire() + public Expire getExpire() + public void setExpire( Expire expire ); //implementations of Expire - NoExpire //doesn't do anything. - FileWatchExpire //isExpired() returns true if a URL it is watching (usually local, in the cache) has changed - StandardExpire //would implement the OCS version of expiration.. IE the default. -- XML changes -- We should mirror the OCS expiration. It is totally fine for our purposes. This would be in registry markup. The PortletFactory would respect these settings. It will expire if it goes past The ocs.xsl file would use the OCS info to produce an element in registry PSML. This should fix all our problems with OCS portlets not getting updated and also provide deployment time expiration (so you don't have to code it into the Portlet if you don't want to). A lot of things will break because of this... I only want to do it once. If you have any suggestions let us know. BTW. I am glad this happened. I didn't like our expiration mechanism impl.