def invoke_hook_emit(self, values, stream_id, out_tasks):
if len(self.task_hooks) > <NUM_LIT:0>:<EOL><INDENT>emit_info = EmitInfo(values=values, stream_id=stream_id,<EOL>task_id=self.get_task_id(), out_tasks=out_tasks)<EOL>for task_hook in self.task_hooks:<EOL><INDENT>task_hook.emit(emit_info)<EOL><DEDENT><DEDENT>
invoke task hooks for every time a tuple is emitted in spout/bolt

        :type values: list
        :param values: values emitted
        :type stream_id: str
        :param stream_id: stream id into which tuple is emitted
        :type out_tasks: list
        :param out_tasks: list of custom grouping target task id