]
Tom Jenkinson updated JBTM-3072:
--------------------------------
Fix Version/s: 5.next
(was: 5.9.3.Final)
Add a test to verify the behaviour of LRA.Type.REQUIRES_NEW combined
with LRA.delayClose
----------------------------------------------------------------------------------------
Key: JBTM-3072
URL:
https://issues.jboss.org/browse/JBTM-3072
Project: JBoss Transaction Manager
Issue Type: Task
Components: LRA, Testing
Affects Versions: 5.9.0.Final
Reporter: Michael Musgrove
Assignee: Michael Musgrove
Priority: Major
Fix For: 5.next
Add a test that verifies the correct behaviour when a method is annotated with both
REQUIRES_NEW and delayClose, ie something like:
{code}
@PUT
@Path(ActivityController.ACCEPT_WORK)
@LRA(value = LRA.Type.REQUIRES_NEW, delayClose = true)
public Response doInNewLRA( ....) {...}
{code}
The expected behaviour is:
{code}
/**
* If called outside a LRA context a new LRA will be created for the
* the duration of the method call and when the call completes it will
* be closed (this behaviour can be overridden using the
* {@link LRA#delayClose} attribute).
*
* If called inside a LRA context it will be suspended and a new LRA
* context will be created for the duration of the call. When the method
* finishes this new LRA will be closed and the original context will be
* resumed. This behaviour can be overridden using the
* {@link LRA#delayClose} attribute) in which case the original LRA
* remains suspended and the new LRA becomes the active one and only
* when that one is terminated will the original context be resumed.
*/
REQUIRES_NEW,
{code}