@ Override public void connectionRecovered ( IManagedConnectionEvent < C > event ) { // physical connection is already set free if ( ! event . getManagedConnection ( ) . hasCoreConnection ( ) ) { return ; } IPhynixxConnection con = event . getManagedConnection ( ) . getCoreConnection ( ) ; if ( con == null || ! ( con instanceof IXADataRecorderAware ) ) { return ; } IXADataRecorderAware messageAwareConnection = ( IXADataRecorderAware ) con ; // Transaction is close and the logger is destroyed ... IXADataRecorder xaDataRecorder = messageAwareConnection . getXADataRecorder ( ) ; if ( xaDataRecorder == null ) { return ; } // it's my logger .... // the logger has to be destroyed ... else { xaDataRecorder . destroy ( ) ; messageAwareConnection . setXADataRecorder ( null ) ; } }
destroys the datalogger