Class TreeTaskMonitor

  • 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.
    • 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