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

Carsten Ziegeler resolved SLING-3444.
-------------------------------------

    Resolution: Fixed

Implemented as described above in Rev 1575951

> Provide a switch to enable feature flags for the resource resolver
> ------------------------------------------------------------------
>
>                 Key: SLING-3444
>                 URL: https://issues.apache.org/jira/browse/SLING-3444
>             Project: Sling
>          Issue Type: Improvement
>          Components: Feature Flags, ResourceResolver
>            Reporter: Carsten Ziegeler
>            Assignee: Carsten Ziegeler
>             Fix For: Feature Flags 1.0.0, Resource Resolver 1.1.0
>
>
> When sending a post request which e.g. sets the feature flag property on a 
> resource, this results in an exception in the post servlet. (unsetting is not 
> possible either).
> The reason is, that the post servlet gets the resource several times and once 
> the feature flag is set, it's not visible to the resource resolver anymore.
> This is a proposal on how to fix this:
>     FeatureFlag support for hiding resources is an implementation (detail) 
> feature of the ResourceResolver(Impl).
>     FeatureFlag support for hiding resources is in general needed for GET 
> (and HEAD) requests only (see the button hiding use case, etc).
> This is the proposed
>     Feature Flag Support is disabled by default in the ResourceResolverImpl.
>     Feature Flag Support can be enabled in the ResourceResolverImpl by 
> setting a new "sling.resourceresolver.feature" (or so) property in the 
> authenticationInfo map given to the get*ResourceResolver method.
>     The Feature bundle implements an AuthenticationInfoPostProcessor which 
> checks the request method (and optionally a request parameter) to decide 
> whether to set or not the "sling.resourceresolver.feature" property in the 
> AuthenticationInfo. By default this AuthenticationInfoPostProcessor sets the 
> flag only for GET and HEAD requests.
> This would enable feature flag support for GET/HEAD requests while still 
> alowing content updates with POST (and other non-idempotent) requests. As a 
> consequence, though, background processing requesting ResourceResolver 
> instances from the ResourceResolverFactory directly will by default get 
> ResourceResolver instances with feature flag support disabled.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to