Class QueueRowSet

    • Field Detail

      • originStepName

        protected volatile String originStepName
      • destinationStepName

        protected volatile String destinationStepName
      • destinationStepCopy

        protected AtomicInteger destinationStepCopy
      • remoteSlaveServerName

        protected volatile String remoteSlaveServerName
    • Constructor Detail

      • QueueRowSet

        public QueueRowSet()
    • Method Detail

      • getRow

        public Object[] getRow()
        Description copied from interface: RowSet
        Get a row from the input buffer, it blocks for a short period until a new row becomes available. Otherwise, it returns null.
        Specified by:
        getRow in interface RowSet
        Returns:
        a row of data or null if no row is available.
      • getRowImmediate

        public Object[] getRowImmediate()
        Description copied from interface: RowSet
        Get the first row in the list immediately.
        Specified by:
        getRowImmediate in interface RowSet
        Returns:
        a row of data or null if no row is available.
      • getRowWait

        public Object[] getRowWait​(long timeout,
                                   TimeUnit tu)
        Description copied from interface: RowSet
        get the first row in the list immediately if it is available or wait until timeout
        Specified by:
        getRowWait in interface RowSet
        Returns:
        a row of data or null if no row is available.
      • putRow

        public boolean putRow​(RowMetaInterface rowMeta,
                              Object[] rowData)
        Description copied from interface: RowSet
        Offer a row of data to this rowset providing for the description (metadata) of the row. If the buffer is full, wait (block) for a small period of time.
        Specified by:
        putRow in interface RowSet
        Parameters:
        rowMeta - The description of the row data
        rowData - the row of data
        Returns:
        true if the row was successfully added to the rowset and false if this buffer was full.
      • putRowWait

        public boolean putRowWait​(RowMetaInterface rowMeta,
                                  Object[] rowData,
                                  long time,
                                  TimeUnit tu)
        Description copied from interface: RowSet
        Offer a row of data to this rowset providing for the description (metadata) of the row. If the buffer is full, wait (block) for a period of time defined in this call.
        Specified by:
        putRowWait in interface RowSet
        Parameters:
        rowMeta - The description of the row data
        rowData - the row of data
        time - The number of units of time
        tu - The unit of time to use
        Returns:
        true if the row was successfully added to the rowset and false if this buffer was full.
      • size

        public int size()
        Specified by:
        size in interface RowSet
        Returns:
        Return the size (or max capacity) of the RowSet
      • clear

        public void clear()
        Description copied from interface: RowSet
        Clear this rowset: remove all rows and remove the "done" flag.
        Specified by:
        clear in interface RowSet
      • compareTo

        public int compareTo​(RowSet rowSet)
        Compares using the target steps and copy, not the source. That way, re-partitioning is always done in the same way.
        Specified by:
        compareTo in interface Comparable<RowSet>
      • equals

        public boolean equals​(org.pentaho.di.core.BaseRowSet rowSet)
      • setDone

        public void setDone()
        Specified by:
        setDone in interface RowSet
      • isDone

        public boolean isDone()
        Specified by:
        isDone in interface RowSet
        Returns:
        Returns true if there is no more input and vice versa
      • getOriginStepName

        public String getOriginStepName()
        Specified by:
        getOriginStepName in interface RowSet
        Returns:
        Returns the originStepName.
      • getOriginStepCopy

        public int getOriginStepCopy()
        Specified by:
        getOriginStepCopy in interface RowSet
        Returns:
        Returns the originStepCopy.
      • getDestinationStepCopy

        public int getDestinationStepCopy()
        Specified by:
        getDestinationStepCopy in interface RowSet
        Returns:
        Returns the destinationStepCopy.
      • setThreadNameFromToCopy

        public void setThreadNameFromToCopy​(String from,
                                            int fromCopy,
                                            String to,
                                            int toCopy)
        Description copied from interface: RowSet
        This method is used only in Trans.java when created RowSet at line 333. Don't need any synchronization on this method
        Specified by:
        setThreadNameFromToCopy in interface RowSet
      • setRemoteSlaveServerName

        public void setRemoteSlaveServerName​(String remoteSlaveServerName)
        Specified by:
        setRemoteSlaveServerName in interface RowSet
        Parameters:
        remoteSlaveServerName - the remote slave server to set
      • isBlocking

        public boolean isBlocking()
        By default we don't report blocking, only for monitored transformations.
        Specified by:
        isBlocking in interface RowSet
        Returns:
        true if this row set is blocking on reading or writing.