Class ExtPipePluginManager


  • public class ExtPipePluginManager
    extends java.lang.Object
    This class' tasks: 1) Manager all ExternalPipe. every ExternalPipe is responsible for 1 external pipe plugin. 2) Manager the data flow between tsFilePipe and pipeOpManager.
    • Constructor Detail

      • ExtPipePluginManager

        public ExtPipePluginManager​(TsFilePipe tsFilePipe)
      • ExtPipePluginManager

        public ExtPipePluginManager​(java.lang.String Name,
                                    org.apache.iotdb.pipe.external.api.IExternalPipeSinkWriterFactory factory,
                                    ExtPipePluginConfiguration conf,
                                    TsFilePipe tsFilePipe)
    • Method Detail

      • setPipeOpManager

        public void setPipeOpManager​(PipeOpManager pipeOpManager)
      • startExtPipe

        public void startExtPipe​(java.lang.String pipeTypeName,
                                 java.util.Map<java.lang.String,​java.lang.String> sinkParams)
                          throws java.io.IOException
        Start 1 dedicated external Pipe
        Parameters:
        pipeTypeName - , External PIPE name that is from IExternalPipeSinkWriterFactory.getExternalPipeType()
        sinkParams - , input parameters in customer CMD.
        Throws:
        java.io.IOException
      • triggerCommit

        public void triggerCommit​(java.lang.String sgName,
                                  long commitIndex)
                           throws java.io.IOException
        Notify ExtPipePluginManager to do new commit checking.
        Parameters:
        sgName -
        commitIndex -
        Throws:
        java.io.IOException
      • checkCommitIndex

        public int checkCommitIndex()
        Summary all ExternalPipes' commit info, then do commit to pipeOpManager.
        Returns:
        the number of left, in-using(uncommitted) FilePipes/OpBlocks
      • stopExtPipe

        public void stopExtPipe​(java.lang.String extPipeTypeName)
        Stop dedicated External Pipe
        Parameters:
        extPipeTypeName -
      • dropExtPipe

        public void dropExtPipe​(java.lang.String pipeTypeName)
        Close dedicated External Pipe
        Parameters:
        pipeTypeName -
      • getExternalPipeStatus

        public ExternalPipeStatus getExternalPipeStatus​(java.lang.String extPipeTypeName)