I would like to have a way to force tapestry to flush/reload its caches and I am wondering how best to get such functionality incorporated into the Tapestry 5 framework. I am not sure what the best forum is to post suggestions around T5 so I thought I would start here. If there is a more appropriate venue please point me in the right direction.
My specific use case is that I have built functionality to load some templates from a content repository. I basically do this through a custom class loader - so the source of the templates is largely transparent to tapestry. However - when a template in the repository changes I need a way to tell tapestry to reload. This is much like the existing logic that reloads the caches when a template file changes. In attempting to implement this I decorated the ComponentTemplateSource service with logic to query the content repository for changes. However - my implementation was blocked by the fact that the UrlChangeTracker is constructed directly by the ComponentTemplateSourceImpl class. This means I have no way to force the ComponentTemplateSourceImpl to flush its cache. It seems that UrlChangeTracker might easily be implemented as an IOC service which would make it available to other services that need to handle loading of templates. Such services could then force a cache flush through the forceChange() method. An alternative approach might be to add a forceChange method to the ComponentTemplateSource interface. We are very successfully using Tapestry 5 for the next generation user interface of our product. We love how flexible and customizable the framework is. It fits in very well with our need to be able to customize and co-brand our UI. I am somewhat new to active participation in open source and am wondering if there a best practice around lobbying for a feature request in a project like tapestry. I am pretty familiar with the tapestry source by now - so one option would be for me to code the update I would like to see and submit a patch. However - I am sure there are multiple approaches to build the functionality I want to see - so it would be helpful if someone familiar with the internals of the caching logic could provide some feedback if my approach is the optimal. If there are other strategies that people here find effective please suggest them. Thanks. David Kendall --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]