@ Override public void destroy ( ) { if ( tc . isEntryEnabled ( ) ) Tr . entry ( tc , "destroy" , this ) ; // check the TSR is active - otherwise we can trigger exceptions when we // try to get data out of it. if ( tsr . getTransactionKey ( ) != null ) { final Map < String , InstanceAndContext < ? > > storage = getStorage ( false ) ; if ( storage != null ) { try { for ( InstanceAndContext < ? > entry : storage . values ( ) ) { final String id = getContextualId ( entry . context ) ; destroyItem ( id , entry ) ; } } finally { tsr . putResource ( TXC_STORAGE_ID , null ) ; } } } else { if ( tc . isDebugEnabled ( ) ) Tr . debug ( tc , "Tran synchronization registry not available, skipping destroy" ) ; } //Fire any observers beanManager . fireEvent ( "Destroying transaction context" , destroyedQualifier ) ; if ( tc . isEntryEnabled ( ) ) Tr . exit ( tc , "destroy" ) ; }
Destroy the entire context . This causes