Class ConcurrentExecutionStatus
- java.lang.Object
-
- org.eclipse.epsilon.common.concurrent.ConcurrentExecutionStatus
-
- Direct Known Subclasses:
SingleConcurrentExecutionStatus
public abstract class ConcurrentExecutionStatus extends java.lang.ObjectA status object used in co-ordinating concurrent jobs.- Since:
- 1.6
- Author:
- Sina Madani
-
-
Field Summary
Fields Modifier and Type Field Description protected java.lang.Throwableexception
-
Constructor Summary
Constructors Constructor Description ConcurrentExecutionStatus()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description abstract voidcompleteExceptionally(java.lang.Throwable exception)protected booleancompleteExceptionallyBase(java.lang.Throwable t)voidcompleteSuccessfully()protected abstract voidcompleteSuccessfully(java.lang.Object lockObj)voidcompleteWithResult(java.lang.Object result)protected abstract voidcompleteWithResult(java.lang.Object lockObj, java.lang.Object result)java.lang.ThrowablegetException()java.lang.ObjectgetResult()protected abstract java.lang.ObjectgetResult(java.lang.Object lockObj)booleanisInProgress()protected abstract booleanisInProgress(java.lang.Object lockObj)booleanregister()protected abstract booleanregister(java.lang.Object lockObj)booleanwaitForCompletion()protected booleanwaitForCompletion(java.lang.Object lockObj)protected abstract booleanwaitForCompletion(java.lang.Object lockObj, java.util.function.Supplier<java.lang.Boolean> targetState)Waits until either exceptional or successful completion conditions are signalled.booleanwaitForCompletion(java.util.function.Supplier<java.lang.Boolean> targetState)java.lang.ThrowablewaitForExceptionalCompletion()
-
-
-
Method Detail
-
getException
public java.lang.Throwable getException()
-
getResult
protected abstract java.lang.Object getResult(java.lang.Object lockObj)
-
getResult
public final java.lang.Object getResult()
-
register
public final boolean register()
-
register
protected abstract boolean register(java.lang.Object lockObj)
- Parameters:
lockObj-- Returns:
trueif registration was successful.
-
isInProgress
public final boolean isInProgress()
-
isInProgress
protected abstract boolean isInProgress(java.lang.Object lockObj)
-
completeSuccessfully
public final void completeSuccessfully()
-
completeSuccessfully
protected abstract void completeSuccessfully(java.lang.Object lockObj)
-
completeWithResult
public final void completeWithResult(java.lang.Object result)
-
completeWithResult
protected abstract void completeWithResult(java.lang.Object lockObj, java.lang.Object result)
-
completeExceptionallyBase
protected final boolean completeExceptionallyBase(java.lang.Throwable t)
-
completeExceptionally
public abstract void completeExceptionally(java.lang.Throwable exception)
-
waitForExceptionalCompletion
public java.lang.Throwable waitForExceptionalCompletion()
-
waitForCompletion
protected abstract boolean waitForCompletion(java.lang.Object lockObj, java.util.function.Supplier<java.lang.Boolean> targetState)Waits until either exceptional or successful completion conditions are signalled.- Returns:
- Whether the completion was successful (
true) or exceptional (false).
-
waitForCompletion
public final boolean waitForCompletion(java.util.function.Supplier<java.lang.Boolean> targetState)
-
waitForCompletion
protected final boolean waitForCompletion(java.lang.Object lockObj)
-
waitForCompletion
public final boolean waitForCompletion()
-
-