Hi there,

Tapestry tries to cache a lot of objects like page and component instances,
template object, which are expensive to build. Currently the cache keys
consist of a page/component name + locale or class name + locale.

I have a very important use case to create some custom keys that allow me to
store more instances into the cache. For example I need not only
locale-specific instances (like MyPage-en, MyPage-de), but also
device-specific or customer-specific page instances (like MyPage-iphone-en,
MyPage-iphone-de, MyPage-de) .

So, I would like to add a new public service in 5.3 (e.g. CacheKeyProvider
or similar) which will be used by PageSource, PageLoader,
ComponentTemplateSource to create cache keys that are not limited to locale.


Any thoughts? Any objections? Any feedback is appreciated as these feature
is very important for me. Right now I would work on the internal API, but I
want to make sure the will be public API for it in the future.

-- 
Best regards,

Igor Drobiazko
http://tapestry5.de

Reply via email to