Konrad Windszus created SLING-5668:
--------------------------------------

             Summary: 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


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.3.4#6332)

Reply via email to