[
https://issues.apache.org/jira/browse/TAPESTRY-2244?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12576628#action_12576628
]
Andreas Andreou commented on TAPESTRY-2244:
-------------------------------------------
I did Cached for T4.1 @ tacos... The only undocumented feature it has is that
upon rewinding, if a value is cached, it'll also be cached during the
forthcoming rendering
(assuming no redirect-after-post)
I don't know if this also happens in T5, but if it does, it's worth an
explanation. For tacos, i'm
considering adding a flag like @Cached(clearOnRender=true) if you have a
better name, please share
> Add @Cached annotation for caching method values
> ------------------------------------------------
>
> Key: TAPESTRY-2244
> URL: https://issues.apache.org/jira/browse/TAPESTRY-2244
> Project: Tapestry
> Issue Type: New Feature
> Components: tapestry-core
> Affects Versions: 5.0.11
> Reporter: Dan Adams
> Assignee: Dan Adams
> Fix For: 5.0.11
>
>
> The @Once annotation can be used on methods to cache the value or cache the
> value based on some other value changing (great for loops). We've been using
> it in our internal CMS library and it's immensly useful, especially when
> getting things out of any kind of database or doing queries. Here's a typical
> usage:
> class:
> @Once
> public List<Entities> getEntities() {
> // get and return the objects from the database or something
> }
> in the template:
> <t:if test="!entities.empty">
> do something
> </t:if>
> <t:loop source="entities">
> loop through and do something
> </t:loop>
> In this example, getEntities gets cached on the if test and then the value is
> cached so it doesn't get called again on the loop. You can also use it this
> way:
> @Property
> private Entity loopValue;
> @Once(watch="loopValue")
> public Object getSomeDependentValue() {
> // do some expensive operation based on loopValue
> }
> which will only execute the method each time loopValue changes.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]