[ https://issues.apache.org/jira/browse/SLING-6785?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15978973#comment-15978973 ]
Justin Edelson commented on SLING-6785: --------------------------------------- bq. but this does not seem to apply to current SlingHttpServletRequest implementation. but the JCR resource implementation extends AbstractResource which extends SlingAdaptable. Right, because SlingHttpServletRequestImpl extends HttpServletReqeustWrapper. bq. if we add a scoping/caching support via @Model annotation we have to make sure that does not mix up with the SlingAdaptable caching implementation. Do you have a specific concern from an implementation standpoint? Or is this just about education/documentation? > Add support for scoped lifecycle of sling models > ------------------------------------------------ > > Key: SLING-6785 > URL: https://issues.apache.org/jira/browse/SLING-6785 > Project: Sling > Issue Type: New Feature > Components: Extensions > Reporter: Christophe Jelger > Priority: Minor > Attachments: SLING-6785.diff > > > Similar to the scopes of JEE beans > (http://docs.oracle.com/javaee/6/tutorial/doc/gjbbk.html), it would be nice > to have the possibility to set a scope for sling models. > For example, a sling model instance could be reused for all the components > within the same HTTP request, thus avoiding that multiple instances of the > "same" model are created. > This could be an attribute of the {{@model}} annotation, for example > something like: > {{@model(scope="request")}} > The {{request}} scope sounds straightforward for a sling model adapted from a > request. > For models adapted from a resource, there are scenarios where the resource > itself is not relevant once the model has been instantiated, so it would > still be useful to be able to obtain the same model instance for different > components and resources within the same HTTP request. > We could possibly have the same scopes than the JEE beans scope: {{request}}, > {{session}}, and {{application}}. -- This message was sent by Atlassian JIRA (v6.3.15#6346)