question: public void invokeHookBoltAck ( Tuple tuple , long processLatencyNs ) { if ( taskHooks . size ( ) != 0 ) { BoltAckInfo ackInfo = new BoltAckInfo ( tuple , getThisTaskId ( ) , processLatencyNs / Constants . MILLISECONDS_TO_NANOSECONDS ) ; for ( ITaskHook taskHook : taskHooks ) { taskHook . boltAck ( ackInfo ) ; } } }
target:  Task hook called in bolt every time a tuple gets acked