public void invokeHookBoltExecute(Tuple tuple,long executeLatencyNs){
  if (taskHooks.size() != 0) {
    BoltExecuteInfo executeInfo=new BoltExecuteInfo(tuple,getThisTaskId(),executeLatencyNs / Constants.MILLISECONDS_TO_NANOSECONDS);
    for (    ITaskHook taskHook : taskHooks) {
      taskHook.boltExecute(executeInfo);
    }
  }
}

public void invokeHookBoltExecute ( Tuple tuple , long executeLatencyNs ) { if ( taskHooks . size ( ) != 0 ) { BoltExecuteInfo executeInfo = new BoltExecuteInfo ( tuple , getThisTaskId ( ) , executeLatencyNs / Constants . MILLISECONDS_TO_NANOSECONDS ) ; for ( ITaskHook taskHook : taskHooks ) { taskHook . boltExecute ( executeInfo ) ; } } }
task hook called in bolt every time a tuple gets executed
