Clone
Dan Haywood <dan@haywood-associates.co.uk>
committed
on 17 Jun 16
ISIS-1452: reinstates logic to abort transaction if an exception is thrown.
Previously (1.12.x) this was done using transaction facet decora… Show more
ISIS-1452: reinstates logic to abort transaction if an exception is thrown.

Previously (1.12.x) this was done using transaction facet decorators, but the work done under ISIS-1291 and others for this release removed those classes, without moving the responsibility elsewhere.

This commit reintroduces the handling, with the ActionInvocationFacet and PropertySetterOrClearFacet using the looked-up PersistenceSessionServiceInternal to executeWithinTransaction; this is basically the same place in the call stack that the decorator facets would have been.

The *Default impl of this - as used in runtime - delegates to the IsisTransactionManager#executeWithinTransaction(...).

Show less

master + 35 more