You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@sling.apache.org by "Justin Edelson (JIRA)" <ji...@apache.org> on 2017/12/12 15:43:02 UTC
[jira] [Closed] (SLING-5668) Models: Leverage
ServletRequestListener.requestDestroyed for calling DisposalCallback in
case the model was created from a request
[ https://issues.apache.org/jira/browse/SLING-5668?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Justin Edelson closed SLING-5668.
---------------------------------
> Models: Leverage ServletRequestListener.requestDestroyed for calling DisposalCallback in case the model was created from a request
> ----------------------------------------------------------------------------------------------------------------------------------
>
> Key: SLING-5668
> URL: https://issues.apache.org/jira/browse/SLING-5668
> Project: Sling
> Issue Type: Improvement
> Components: Extensions
> Affects Versions: Sling Models Impl 1.2.6
> Reporter: Konrad Windszus
> Assignee: Justin Edelson
> Fix For: Sling Models Impl 1.4.6
>
>
> Due to SLING-5664 I had to remove usage of {{SlingScriptHelper}} in the {{OSGiServiceInjector}}. Therefore now always the {{DisposableCallbackRegistry}} is used to release service references. That mechanism relies on a dedicated thread (https://github.com/apache/sling/blob/b864f105617c0ac7c2d525bfdb66eda2200c6460/bundles/extensions/models/impl/src/main/java/org/apache/sling/models/impl/ModelAdapterFactory.java#L133) and phantom references (https://github.com/apache/sling/blob/b864f105617c0ac7c2d525bfdb66eda2200c6460/bundles/extensions/models/impl/src/main/java/org/apache/sling/models/impl/ModelAdapterFactory.java#L504). In case of acting on top of a request one could leverage {{ServletRequestListener.requestDestroyed(...)}} instead, which is more reliable and called earlier than relying on phantom references.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)