You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@sling.apache.org by "Christophe Jelger (JIRA)" <ji...@apache.org> on 2017/04/21 13:33:04 UTC

[jira] [Updated] (SLING-6785) Add support for scoped lifecycle of sling models

     [ https://issues.apache.org/jira/browse/SLING-6785?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Christophe Jelger updated SLING-6785:
-------------------------------------
    Description: 
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")}}

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}}.

  was:
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"}}

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 resources within the same HTTP request.

We could possibly have the same scopes than the JEE beans scope: {{request}}, {{session}}, and {{application}}.


> 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
>
> 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")}}
> 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)