Package com.nomagic.task
Class Task
- java.lang.Object
-
- com.nomagic.task.SwingWorker<java.lang.Object>
-
- com.nomagic.task.Task
-
- Direct Known Subclasses:
TeamworkService.AutoLoginTask,TeamworkService.LoginTask
@OpenApi public abstract class Task extends com.nomagic.task.SwingWorker<java.lang.Object>Task for execution of some code on a separate thread.
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.StringCANCELEDstatic java.lang.StringCOMPLETEDprivate static java.lang.ThreadLocal<ProgressStatus>currentTaskStatusstatic java.lang.StringEXCEPTIONstatic java.lang.StringFINISHEDprivate booleanmCancelableprivate static java.util.concurrent.atomic.AtomicIntegermCurrentRunningCountprivate com.nomagic.task.Task.DoFinishedExecutermDoFinishedExecuterprivate java.lang.Throwable[]mExceptionsprivate booleanmFinishedprivate booleanmInterruptThreadOnCancelprivate java.lang.StringmStateprivate java.beans.PropertyChangeSupportmStateChangeSupportRegister listeners to report task changeprivate ProgressStatusmStatusstatic java.lang.StringREADYstatic java.lang.StringSTATE_CHANGED_PROPERTYstatic java.lang.StringWORKING
-
Constructor Summary
Constructors Constructor Description Task(java.lang.String name)
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Deprecated Methods Modifier and Type Method Description voidaddPropertyChangedListener(java.beans.PropertyChangeListener listener)java.lang.Objectconstruct()static ProgressStatuscurrentTaskStatus()Returns currently activeTaskprogress statusvoiddoFinished()abstract voidexecute()private voidfirePropertyChange(java.lang.String name, java.lang.Object oldValue, java.lang.Object newValue)Fires property change event by given parametersjava.lang.ThrowablegetException()java.lang.StringgetName()java.lang.StringgetState()ProgressStatusgetStatus()voidinterrupt()Sets state to CANCELED.voidinterruptAndStop()Deprecated.See MDUML-57069 for deprecationstatic booleanisActiveTasks()booleanisCancelable()booleanisCanceled()booleanisCompleted()booleanisException()booleanisFinished()booleanisReady()booleanisWorking()private static voidregisterTask()voidremovePropertyChangedListener(java.beans.PropertyChangeListener listener)voidsetCancelable(boolean cancelable)voidsetDoFinishedExecuter(com.nomagic.task.Task.DoFinishedExecuter doFinishedExecuter)voidsetException(java.lang.Throwable e)voidsetFinished(boolean finished)voidsetInterruptThreadOnCancel(boolean interruptThreadOnCancel)voidsetName(java.lang.String name)voidsetState(java.lang.String state)voidsetStatus(ProgressStatus status)voidstopTask()Interrupt task and wait while it is workingprivate static voidunregisterTask()
-
-
-
Field Detail
-
STATE_CHANGED_PROPERTY
public static final java.lang.String STATE_CHANGED_PROPERTY
- See Also:
- Constant Field Values
-
mCurrentRunningCount
private static final java.util.concurrent.atomic.AtomicInteger mCurrentRunningCount
-
CANCELED
public static final java.lang.String CANCELED
- See Also:
- Constant Field Values
-
FINISHED
public static final java.lang.String FINISHED
- See Also:
- Constant Field Values
-
COMPLETED
public static final java.lang.String COMPLETED
- See Also:
- Constant Field Values
-
WORKING
public static final java.lang.String WORKING
- See Also:
- Constant Field Values
-
READY
public static final java.lang.String READY
- See Also:
- Constant Field Values
-
EXCEPTION
public static final java.lang.String EXCEPTION
- See Also:
- Constant Field Values
-
currentTaskStatus
private static final java.lang.ThreadLocal<ProgressStatus> currentTaskStatus
-
mStatus
private ProgressStatus mStatus
-
mState
private java.lang.String mState
-
mExceptions
private final java.lang.Throwable[] mExceptions
-
mCancelable
private boolean mCancelable
-
mFinished
private volatile boolean mFinished
-
mInterruptThreadOnCancel
private boolean mInterruptThreadOnCancel
-
mDoFinishedExecuter
private com.nomagic.task.Task.DoFinishedExecuter mDoFinishedExecuter
-
mStateChangeSupport
private java.beans.PropertyChangeSupport mStateChangeSupport
Register listeners to report task change
-
-
Method Detail
-
setInterruptThreadOnCancel
public void setInterruptThreadOnCancel(boolean interruptThreadOnCancel)
-
currentTaskStatus
public static ProgressStatus currentTaskStatus()
Returns currently activeTaskprogress status- Returns:
- currently active
Taskprogress status ornullif current thread is not executing aTask
-
setName
public void setName(java.lang.String name)
-
setException
public void setException(@CheckForNull java.lang.Throwable e)
-
getException
public java.lang.Throwable getException()
-
getName
public java.lang.String getName()
-
getStatus
public ProgressStatus getStatus()
-
setStatus
public void setStatus(ProgressStatus status)
-
isCompleted
public boolean isCompleted()
-
isWorking
public boolean isWorking()
-
isReady
public boolean isReady()
-
isException
public boolean isException()
-
isCanceled
public boolean isCanceled()
-
unregisterTask
private static void unregisterTask()
-
setState
public void setState(java.lang.String state)
-
firePropertyChange
private void firePropertyChange(java.lang.String name, java.lang.Object oldValue, java.lang.Object newValue)Fires property change event by given parameters- Parameters:
name- property nameoldValue- old property valuenewValue- new property value
-
getState
public java.lang.String getState()
-
construct
@CheckForNull public final java.lang.Object construct()
- Specified by:
constructin classcom.nomagic.task.SwingWorker<java.lang.Object>
-
registerTask
private static void registerTask()
-
execute
public abstract void execute() throws java.lang.Exception- Throws:
java.lang.Exception
-
interruptAndStop
@Deprecated public final void interruptAndStop()
Deprecated.See MDUML-57069 for deprecation- Overrides:
interruptAndStopin classcom.nomagic.task.SwingWorker<java.lang.Object>
-
doFinished
public final void doFinished()
- Overrides:
doFinishedin classcom.nomagic.task.SwingWorker<java.lang.Object>
-
isFinished
public boolean isFinished()
- Returns:
- true if task is completely finished (execute and finished methods are executed)
-
isCancelable
public boolean isCancelable()
- Returns:
- Returns the cancelable.
-
setCancelable
public void setCancelable(boolean cancelable)
- Parameters:
cancelable- The cancelable to set.
-
interrupt
public void interrupt()
Sets state to CANCELED. Notifies all threads that are waiting on this object monitor.- Overrides:
interruptin classcom.nomagic.task.SwingWorker<java.lang.Object>
-
isActiveTasks
public static boolean isActiveTasks()
-
addPropertyChangedListener
public void addPropertyChangedListener(java.beans.PropertyChangeListener listener)
-
removePropertyChangedListener
public void removePropertyChangedListener(java.beans.PropertyChangeListener listener)
-
setFinished
public void setFinished(boolean finished)
-
setDoFinishedExecuter
public void setDoFinishedExecuter(com.nomagic.task.Task.DoFinishedExecuter doFinishedExecuter)
-
stopTask
public void stopTask()
Interrupt task and wait while it is working
-
-