public void restoreUncommitted ( SIMPMessage m ) { if ( TraceComponent . isAnyTracingEnabled ( ) && tc . isEntryEnabled ( ) ) SibTr . entry ( this , tc , "restoreUncommitted" , new Object [ ] { m } ) ; TickRange tr = null ; JsMessage jsMsg = m . getMessage ( ) ; long stamp = jsMsg . getGuaranteedValueValueTick ( ) ; long starts = jsMsg . getGuaranteedValueStartTick ( ) ; long ends = jsMsg . getGuaranteedValueEndTick ( ) ; if ( TraceComponent . isAnyTracingEnabled ( ) && tc . isDebugEnabled ( ) ) { SibTr . debug ( tc , "restoreUncommitted at: " + stamp + " on Stream " + stream ) ; } synchronized ( this ) { // write into stream tr = TickRange . newUncommittedTick ( stamp ) ; tr . startstamp = starts ; tr . endstamp = ends ; // Save message in the stream while it is Uncommitted // It will be replaced by its index in the ItemStream once it becomes a Value tr . value = m ; oststream . writeCombinedRange ( tr ) ; } // end synchronized if ( TraceComponent . isAnyTracingEnabled ( ) && tc . isEntryEnabled ( ) ) SibTr . exit ( tc , "restoreUncommitted" ) ; }
This method uses a Value message to write an Uncommitted tick into the stream . It is called at retore time .