Class TreeTaskMonitor NEW

  • All Implemented Interfaces:
    TaskMonitor

    public class TreeTaskMonitor
    extends java.lang.Object
    implements TaskMonitor
    TaskMonitor implementation that is useful for monitor work when traversing trees. It works by subdividing the distance of the top-most progress bar (represented by the top-most monitor) into equal size chunks depending on how many children have to be visited. For example, assume the root node has 5 children, then the task bar for that node would increment 20% of the bar as it completed work on each of its children. Now, assume each child of the root node has 10 children. The task monitor for each root child will operate entirely with its 20% as mentioned above. So the first child of the first child will increment the progress bar 2% (10% of 20%) when it is complete.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      ChangeModifier and Type Method Description
      void addCancelledListener​(CancelledListener listener)
      Add cancelled listener
      void cancel()
      Cancel the task
      void checkCanceled()
      Check to see if this monitor has been canceled
      void clearCanceled()
      Clear the cancellation so that this TaskMonitor may be reused
      long getMaximum()
      Returns the current maximum value for progress
      java.lang.String getMessage()
      Gets the last set message of this monitor
      long getProgress()
      Returns the current progress value or TaskMonitor.NO_PROGRESS_VALUE if there is no value set
      void incrementProgress​(long incrementAmount)
      A convenience method to increment the current progress by the given value
      void initialize​(long maxValue)
      Initialized this TaskMonitor to the given max values.
      boolean isCancelEnabled()
      Returns true if cancel ability is enabled
      boolean isCancelled()
      Returns true if the user has cancelled the operation
      boolean isIndeterminate()
      Returns true if this monitor shows no progress
      void removeCancelledListener​(CancelledListener listener)
      Remove cancelled listener
      void setCancelEnabled​(boolean enable)
      Set the enablement of the Cancel button
      void setIndeterminate​(boolean indeterminate)
      An indeterminate task monitor may choose to show an animation instead of updating progress
      void setMaximum​(long maxValue)
      Set the progress maximum value
      void setMessage​(java.lang.String message)
      Sets the message displayed on the task monitor
      void setProgress​(long value)
      Sets the current progress value
      void setShowProgressValue​(boolean showProgressValue)
      True (the default) signals to paint the progress information inside of the progress bar
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • TreeTaskMonitor

        public TreeTaskMonitor​(TaskMonitor monitor,
                               long max)
    • Method Detail

      • isCancelled

        public boolean isCancelled()
        Description copied from interface: TaskMonitor
        Returns true if the user has cancelled the operation
        Specified by:
        isCancelled in interface TaskMonitor
        Returns:
        true if the user has cancelled the operation
      • setShowProgressValue

        public void setShowProgressValue​(boolean showProgressValue)
        Description copied from interface: TaskMonitor
        True (the default) signals to paint the progress information inside of the progress bar
        Specified by:
        setShowProgressValue in interface TaskMonitor
        Parameters:
        showProgressValue - true to paint the progress value; false to not
      • setMessage

        public void setMessage​(java.lang.String message)
        Description copied from interface: TaskMonitor
        Sets the message displayed on the task monitor
        Specified by:
        setMessage in interface TaskMonitor
        Parameters:
        message - the message to display
      • getMessage

        public java.lang.String getMessage()
        Description copied from interface: TaskMonitor
        Gets the last set message of this monitor
        Specified by:
        getMessage in interface TaskMonitor
        Returns:
        the message
      • setProgress

        public void setProgress​(long value)
        Description copied from interface: TaskMonitor
        Sets the current progress value
        Specified by:
        setProgress in interface TaskMonitor
        Parameters:
        value - progress value
      • initialize

        public void initialize​(long maxValue)
        Description copied from interface: TaskMonitor
        Initialized this TaskMonitor to the given max values. The current value of this monitor will be set to zero.
        Specified by:
        initialize in interface TaskMonitor
        Parameters:
        maxValue - maximum value for progress
      • setMaximum

        public void setMaximum​(long maxValue)
        Description copied from interface: TaskMonitor
        Set the progress maximum value

        Note: setting this value will reset the progress to be the max if the progress is currently greater than the new new max value.

        Specified by:
        setMaximum in interface TaskMonitor
        Parameters:
        maxValue - maximum value for progress
      • getMaximum

        public long getMaximum()
        Description copied from interface: TaskMonitor
        Returns the current maximum value for progress
        Specified by:
        getMaximum in interface TaskMonitor
        Returns:
        the maximum progress value
      • setIndeterminate

        public void setIndeterminate​(boolean indeterminate)
        Description copied from interface: TaskMonitor
        An indeterminate task monitor may choose to show an animation instead of updating progress
        Specified by:
        setIndeterminate in interface TaskMonitor
        Parameters:
        indeterminate - true if indeterminate
      • isIndeterminate

        public boolean isIndeterminate()
        Description copied from interface: TaskMonitor
        Returns true if this monitor shows no progress
        Specified by:
        isIndeterminate in interface TaskMonitor
        Returns:
        true if this monitor shows no progress
      • incrementProgress

        public void incrementProgress​(long incrementAmount)
        Description copied from interface: TaskMonitor
        A convenience method to increment the current progress by the given value
        Specified by:
        incrementProgress in interface TaskMonitor
        Parameters:
        incrementAmount - The amount by which to increment the progress
      • cancel

        public void cancel()
        Description copied from interface: TaskMonitor
        Cancel the task
        Specified by:
        cancel in interface TaskMonitor
      • setCancelEnabled

        public void setCancelEnabled​(boolean enable)
        Description copied from interface: TaskMonitor
        Set the enablement of the Cancel button
        Specified by:
        setCancelEnabled in interface TaskMonitor
        Parameters:
        enable - true means to enable the cancel button
      • isCancelEnabled

        public boolean isCancelEnabled()
        Description copied from interface: TaskMonitor
        Returns true if cancel ability is enabled
        Specified by:
        isCancelEnabled in interface TaskMonitor
        Returns:
        true if cancel ability is enabled
      • clearCanceled

        public void clearCanceled()
        Description copied from interface: TaskMonitor
        Clear the cancellation so that this TaskMonitor may be reused
        Specified by:
        clearCanceled in interface TaskMonitor