private synchronized ReceiveAllowedThread getReceiveAllowedThread ( DestinationHandler destinationHandler ) { if ( TraceComponent . isAnyTracingEnabled ( ) && tc . isEntryEnabled ( ) ) SibTr . entry ( tc , "getReceiveAllowedThread" , destinationHandler ) ; if ( _receiveAllowedThread == null ) { _receiveAllowedThread = new ReceiveAllowedThread ( destinationHandler ) ; if ( TraceComponent . isAnyTracingEnabled ( ) && tc . isEntryEnabled ( ) ) SibTr . exit ( tc , "getReceiveAllowedThread" , _receiveAllowedThread ) ; return _receiveAllowedThread ; } _receiveAllowedThread . markForUpdate ( ) ; if ( TraceComponent . isAnyTracingEnabled ( ) && tc . isEntryEnabled ( ) ) SibTr . exit ( tc , "getReceiveAllowedThread" , null ) ; return null ; }
Checks if there is a ReceiveAllowedThread already running . If there is it will mark the thread to indicate that a rerun has been requested . If not a new ReceiveAllowedThread is created and returned .