org.eclipse.emf.transaction
Interface RunnableWithResult<T>
-
-
Type Parameters:
-
T
- the result type of the runnable
-
All Superinterfaces:
-
Runnable
-
All Known Implementing Classes:
-
PrivilegedRunnable,
RunnableWithResult.Impl
-
public interface RunnableWithResult<T>
- extends
Runnable
Extends the core Java
Runnable
interface with the ability to return
a result. Useful for returning results of read operations from the
TransactionalEditingDomain.runExclusive(Runnable)
method.
Also, because read transactions can roll back on commit if, for example, some
other thread performs a concurrent write that corrupts the data being read,
this interface also provides a means to set a status to indicate success
or failure of the transaction.
-
See Also:
-
TransactionalEditingDomain.runExclusive(Runnable)
Methods inherited from interface java.lang.
Runnable
|
run
|
getResult
T getResult()
- Returns a result computed by my
Runnable.run()
method.
-
-
-
Returns:
- my result, or
null
if none
setStatus
void setStatus(
IStatus status)
- Sets the commit status after completion of the
Runnable.run()
method.
-
-
-
Parameters:
-
status
- an OK status if commit succeeds, or an error status
if it fails (in which case the transaction rolled back and the status
provides details in human-readable form)
getStatus
IStatus getStatus()
- Queries my commit status. My status is only available after I have
finished running and after the editing domain has attempted to commit
my transaction.
-
-
-
Returns:
- the status of my commit (as set by the
setStatus(IStatus)
method)