public void forceFlush ( SIBUuid12 streamID ) throws SIResourceException , SIResourceException { if ( TraceComponent . isAnyTracingEnabled ( ) && tc . isEntryEnabled ( ) ) SibTr . entry ( this , tc , "forceFlush" , new Object [ ] { streamID } ) ; // Synchronize to resolve racing messages. synchronized ( flushMap ) { FlushQueryRecord entry = flushMap . remove ( streamID ) ; // Remove the entry (we may not have even had // one), then clean up any existing stream state. Also, make // sure we turn off the alarm if there IS an entry. Note that // an alarm will always be present if an entry exists. if ( entry != null ) entry . resend . cancel ( ) ; flush ( streamID ) ; } //If all the inbound stream sets are empty, queue the destination that the //inbound streams are for to the asynch deletion thread, incase any cleanup //of the destination is required. If not, the asynch deletion thread will do //nothing. // if (isEmpty()) // { // DestinationManager destinationManager = messageProcessor.getDestinationManager(); // BaseDestinationHandler destinationHandler = protocolItemStream.getDestinationHandler(); // destinationManager.markDestinationAsCleanUpPending(destinationHandler); // } if ( TraceComponent . isAnyTracingEnabled ( ) && tc . isEntryEnabled ( ) ) SibTr . exit ( tc , "forceFlush" ) ; }
Flush any existing streams and throw away any cached messages .