* If we have a synchronization list then we must be top-level.
*/
if (_synchs != null)
{
boolean doSuspend = false;
ControlWrapper cw = null;
try
{
/*
* Make sure that this transaction is active on the thread
* before we invoke any Synchronizations. They are
* TransactionalObjects and must have the context flowed to
* them.
*/
try
{
// cw = OTSImpleManager.systemCurrent().getControlWrapper();
cw = OTSImpleManager.current().getControlWrapper();
/*
* If there's no transaction incoming, then use the one that
* we got at creation time.
*/
if ((cw == null) || (!controlHandle.equals(cw.getImple())))
{
// OTSImpleManager.systemCurrent().resumeImple(controlHandle);
OTSImpleManager.current().resumeImple(controlHandle);