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