Class PipeManagerWorker


  • @ThreadSafe
    public final class PipeManagerWorker
    extends java.lang.Object
    Two threads use this class - Network thread: Saves pipe connections created from destination tasks. - Task executor thread: Creates new pipe connections to destination tasks (read), or retrieves a saved pipe connection (write)
    • Method Detail

      • notifyMaster

        public void notifyMaster​(java.lang.String runtimeEdgeId,
                                 long srcTaskIndex)
      • getOutputContexts

        public java.util.List<OutputContext> getOutputContexts​(RuntimeEdge runtimeEdge,
                                                               long srcTaskIndex)
        (SYNCHRONIZATION) Called by task threads.
        Parameters:
        runtimeEdge - runtime edge
        srcTaskIndex - source task index
        Returns:
        output contexts.
      • getSerializer

        public Serializer getSerializer​(java.lang.String runtimeEdgeId)
      • onOutputContext

        public void onOutputContext​(ByteOutputContext outputContext)
                             throws com.google.protobuf.InvalidProtocolBufferException
        (SYNCHRONIZATION) Called by network threads.
        Parameters:
        outputContext - output context
        Throws:
        com.google.protobuf.InvalidProtocolBufferException - protobuf exception
      • onInputContext

        public void onInputContext​(ByteInputContext inputContext)
                            throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException