public void resetLink ( String linkName ) { if ( TraceComponent . isAnyTracingEnabled ( ) && tc . isEntryEnabled ( ) ) SibTr . entry ( tc , "resetLink" , linkName ) ; try { DestinationHandler link = linkIndex . findByName ( linkName , null ) ; checkDestinationHandlerExists ( link != null , linkName , messageProcessor . getMessagingEngineBus ( ) ) ; // Only applicable to BaseDestinationHandlers and their children if ( link instanceof LinkHandler ) { LinkHandler linkhandler = ( LinkHandler ) link ; // Need to ensure that this change is persisted - specifically that the // BDH "toBeIgnored" flag is persisted LocalTransaction siTran = txManager . createLocalTransaction ( true ) ; linkhandler . reset ( ) ; // Change our entry in the appropriate index. linkIndex . reset ( link ) ; // Persist the change linkhandler . requestUpdate ( ( Transaction ) siTran ) ; // commit the transaction siTran . commit ( ) ; if ( TraceComponent . isAnyTracingEnabled ( ) && tc . isDebugEnabled ( ) ) SibTr . debug ( tc , "Have reset link " + linkhandler . getName ( ) ) ; } else { if ( TraceComponent . isAnyTracingEnabled ( ) && tc . isDebugEnabled ( ) ) SibTr . debug ( tc , "Not a LinkHandler, cannot reset handler for " + link . getName ( ) ) ; } } catch ( MessageStoreException e ) { // No FFDC code needed SibTr . exception ( tc , e ) ; //throw e; } catch ( SIException e ) { // No FFDC code needed SibTr . exception ( tc , e ) ; //handleRollback(siTran); // throw e; } if ( TraceComponent . isAnyTracingEnabled ( ) && tc . isEntryEnabled ( ) ) SibTr . exit ( tc , "resetLink" ) ; }
Reset a link .