[
https://issues.apache.org/jira/browse/ISIS-2301?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Andi Huber updated ISIS-2301:
-----------------------------
Attachment: image (2).png
> Docs for new IsisInteractionScope
> ---------------------------------
>
> Key: ISIS-2301
> URL: https://issues.apache.org/jira/browse/ISIS-2301
> Project: Isis
> Issue Type: Improvement
> Components: Isis Docs & Website
> Reporter: Andi Huber
> Assignee: Andi Huber
> Priority: Major
> Fix For: 2.0.0-M4
>
> Attachments: image (2).png, image (3).png
>
>
> We allow IsisInteractions to be nested. The @IsisInteractionScope is always
> bound to the top-level IsisInteraction of the current thread's session stack.
> (first stack element, aka bottom of stack)
> Isis (not Spring) is aware, when any IsisInteractionScope ends. So at the end
> of each IsisInteractionScope, we call the destruction runnables on the
> IsisInteractionScope-d beans that belong to the current thread, then clear
> the IsisInteraction stack (of the current thread). (edited)
> The IsisInteractionScope-d beans are managed by Spring, that is Spring
> creates them and registers their destruction runnables.
> Requires Provider idiom: we fail early if one tries to inject an
> IsisInteractionScope-d bean directly. The thrown exception gives a hint, how
> to fix it. (Use the Provider<> idiom instead)
--
This message was sent by Atlassian Jira
(v8.3.4#803005)