Package ghidra.util.task
Class WrappingTaskMonitor
- java.lang.Object
- 
- ghidra.util.task.WrappingTaskMonitor
 
- 
- All Implemented Interfaces:
- TaskMonitor
 - Direct Known Subclasses:
- CancelOnlyWrappingTaskMonitor
 
 public class WrappingTaskMonitor extends java.lang.Object implements TaskMonitor An implementation of theTaskMonitorinterface that simply wraps a delegate task monitor. This is useful for classes that wish to wrap a task monitor, changing behavior as needed by overriding a subset of methods.Synchronization Policy: 
 We wish for this class to be performant. Thus, we do not synchronize the methods of this class. ThesetDelegate(TaskMonitor)is synchronized to ensure thread visibility for the state of the delegate monitor.When calling setDelegate(TaskMonitor)there is the potential for the values being transferred to become inconsistent with any new values being set. We have decided that this does not much matter for the overall progress or the messages on the monitor. However, most of the other setter methods could lead to bad behavior if they are inconsistent.
- 
- 
Field SummaryFields Modifier and Type Field Description protected TaskMonitordelegate- 
Fields inherited from interface ghidra.util.task.TaskMonitorDUMMY, NO_PROGRESS_VALUE
 
- 
 - 
Constructor SummaryConstructors Constructor Description WrappingTaskMonitor(TaskMonitor delegate)Constructor
 - 
Method SummaryAll Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddCancelledListener(CancelledListener listener)Add cancelled listenervoidcancel()Cancel the taskvoidcheckCanceled()Check to see if this monitor has been canceledvoidclearCanceled()Clear the cancellation so that this TaskMonitor may be reusedlonggetMaximum()Returns the current maximum value for progressjava.lang.StringgetMessage()Gets the last set message of this monitorlonggetProgress()Returns the current progress value orTaskMonitor.NO_PROGRESS_VALUEif there is no value setvoidincrementProgress(long incrementAmount)A convenience method to increment the current progress by the given valuevoidinitialize(long max)Initialized this TaskMonitor to the given max values.booleanisCancelEnabled()Returns true if cancel ability is enabledbooleanisCancelled()Returns true if the user has cancelled the operationbooleanisIndeterminate()Returns true if this monitor shows no progressvoidremoveCancelledListener(CancelledListener listener)Remove cancelled listenervoidsetCancelEnabled(boolean enable)Set the enablement of the Cancel buttonvoidsetDelegate(TaskMonitor newDelegate)Sets the delegate of this wrapper to be the new value.voidsetIndeterminate(boolean indeterminate)An indeterminate task monitor may choose to show an animation instead of updating progressvoidsetMaximum(long max)Set the progress maximum valuevoidsetMessage(java.lang.String message)Sets the message displayed on the task monitorvoidsetProgress(long value)Sets the current progress valuevoidsetShowProgressValue(boolean showProgressValue)True (the default) signals to paint the progress information inside of the progress bar
 
- 
- 
- 
Field Detail- 
delegateprotected TaskMonitor delegate 
 
- 
 - 
Constructor Detail- 
WrappingTaskMonitorpublic WrappingTaskMonitor(TaskMonitor delegate) Constructor- Parameters:
- delegate- the delegate task monitor
 
 
- 
 - 
Method Detail- 
setDelegatepublic void setDelegate(TaskMonitor newDelegate) Sets the delegate of this wrapper to be the new value. The new delegate will be initialized with the current values of the existing delegate.- Parameters:
- newDelegate- the new delegate
 
 - 
isCancelledpublic boolean isCancelled() Description copied from interface:TaskMonitorReturns true if the user has cancelled the operation- Specified by:
- isCancelledin interface- TaskMonitor
- Returns:
- true if the user has cancelled the operation
 
 - 
setShowProgressValuepublic void setShowProgressValue(boolean showProgressValue) Description copied from interface:TaskMonitorTrue (the default) signals to paint the progress information inside of the progress bar- Specified by:
- setShowProgressValuein interface- TaskMonitor
- Parameters:
- showProgressValue- true to paint the progress value; false to not
 
 - 
setMessagepublic void setMessage(java.lang.String message) Description copied from interface:TaskMonitorSets the message displayed on the task monitor- Specified by:
- setMessagein interface- TaskMonitor
- Parameters:
- message- the message to display
 
 - 
getMessagepublic java.lang.String getMessage() Description copied from interface:TaskMonitorGets the last set message of this monitor- Specified by:
- getMessagein interface- TaskMonitor
- Returns:
- the message
 
 - 
setProgresspublic void setProgress(long value) Description copied from interface:TaskMonitorSets the current progress value- Specified by:
- setProgressin interface- TaskMonitor
- Parameters:
- value- progress value
 
 - 
initializepublic void initialize(long max) Description copied from interface:TaskMonitorInitialized this TaskMonitor to the given max values. The current value of this monitor will be set to zero.- Specified by:
- initializein interface- TaskMonitor
- Parameters:
- max- maximum value for progress
 
 - 
setMaximumpublic void setMaximum(long max) Description copied from interface:TaskMonitorSet the progress maximum valueNote: 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:
- setMaximumin interface- TaskMonitor
- Parameters:
- max- maximum value for progress
 
 - 
getMaximumpublic long getMaximum() Description copied from interface:TaskMonitorReturns the current maximum value for progress- Specified by:
- getMaximumin interface- TaskMonitor
- Returns:
- the maximum progress value
 
 - 
setIndeterminatepublic void setIndeterminate(boolean indeterminate) Description copied from interface:TaskMonitorAn indeterminate task monitor may choose to show an animation instead of updating progress- Specified by:
- setIndeterminatein interface- TaskMonitor
- Parameters:
- indeterminate- true if indeterminate
 
 - 
isIndeterminatepublic boolean isIndeterminate() Description copied from interface:TaskMonitorReturns true if this monitor shows no progress- Specified by:
- isIndeterminatein interface- TaskMonitor
- Returns:
- true if this monitor shows no progress
 
 - 
checkCanceledpublic void checkCanceled() throws CancelledExceptionDescription copied from interface:TaskMonitorCheck to see if this monitor has been canceled- Specified by:
- checkCanceledin interface- TaskMonitor
- Throws:
- CancelledException- if monitor has been cancelled
 
 - 
incrementProgresspublic void incrementProgress(long incrementAmount) Description copied from interface:TaskMonitorA convenience method to increment the current progress by the given value- Specified by:
- incrementProgressin interface- TaskMonitor
- Parameters:
- incrementAmount- The amount by which to increment the progress
 
 - 
getProgresspublic long getProgress() Description copied from interface:TaskMonitorReturns the current progress value orTaskMonitor.NO_PROGRESS_VALUEif there is no value set- Specified by:
- getProgressin interface- TaskMonitor
- Returns:
- the current progress value or TaskMonitor.NO_PROGRESS_VALUEif there is no value set
 
 - 
cancelpublic void cancel() Description copied from interface:TaskMonitorCancel the task- Specified by:
- cancelin interface- TaskMonitor
 
 - 
addCancelledListenerpublic void addCancelledListener(CancelledListener listener) Description copied from interface:TaskMonitorAdd cancelled listener- Specified by:
- addCancelledListenerin interface- TaskMonitor
- Parameters:
- listener- the cancel listener
 
 - 
removeCancelledListenerpublic void removeCancelledListener(CancelledListener listener) Description copied from interface:TaskMonitorRemove cancelled listener- Specified by:
- removeCancelledListenerin interface- TaskMonitor
- Parameters:
- listener- the cancel listener
 
 - 
setCancelEnabledpublic void setCancelEnabled(boolean enable) Description copied from interface:TaskMonitorSet the enablement of the Cancel button- Specified by:
- setCancelEnabledin interface- TaskMonitor
- Parameters:
- enable- true means to enable the cancel button
 
 - 
isCancelEnabledpublic boolean isCancelEnabled() Description copied from interface:TaskMonitorReturns true if cancel ability is enabled- Specified by:
- isCancelEnabledin interface- TaskMonitor
- Returns:
- true if cancel ability is enabled
 
 - 
clearCanceledpublic void clearCanceled() Description copied from interface:TaskMonitorClear the cancellation so that this TaskMonitor may be reused- Specified by:
- clearCanceledin interface- TaskMonitor
 
 
- 
 
-