public interface ITransactionalOperation
extends org.eclipse.core.commands.operations.IUndoableOperation
ITransactionalOperation is an IUndoableOperation that
tolerates successive calls to
IUndoableOperation.execute(IProgressMonitor, IAdaptable) and
IUndoableOperation.undo(IProgressMonitor, IAdaptable) and allows
to check whether it has an overall effect (isNoOp()) compared to the
initial state upon construction.
It is used by transaction policies to
encapsulate their applied changes. The transaction policy will potentially execute the operation locally (to
realize "live-feedback") before returning it in its
AbstractPolicy.commit() method. It will then be executed
on the IOperationHistory, but only if it has an overall effect that
needs to be undoable.
| Modifier and Type | Method and Description |
|---|---|
boolean |
isContentRelevant()
Returns
true if this ITransactionalOperation is
actually changing model data (instead of only affecting the
visualization). |
boolean |
isNoOp()
Returns
true if this ITransactionalOperation has no
effect (in comparison to its initial state). |
boolean isContentRelevant()
true if this ITransactionalOperation is
actually changing model data (instead of only affecting the
visualization). Otherwise returns false. The content
relevance of an ITransactionalOperation can be checked to
determine if the execution of the operation will affect the model, for
example, to set an editor's dirty flag.true if this ITransactionalOperation is
actually changing model data, otherwise false.boolean isNoOp()
true if this ITransactionalOperation has no
effect (in comparison to its initial state). Otherwise returns
false.true if this ITransactionalOperation has no
effect, otherwise false.Copyright (c) 2014, 2016 itemis AG and others. All rights reserved.