Package org.apache.cayenne.graph

## Interface GraphDiff

- All Superinterfaces:
    `Serializable`
  All Known Implementing Classes:
    `ArcCreateOperation`, `ArcDeleteOperation`, `CompoundDiff`, `NodeCreateOperation`, `NodeDeleteOperation`, `NodeDiff`, `NodeIdChangeOperation`, `NodePropertyChangeOperation`, `ObjectDiff`, `ObjectStoreGraphDiff`

      public interface GraphDiff
      extends Serializable

  Represents a change in an object graph. This can be a simple change (like a node property update) or a composite change that consists of a number of smaller changes.
  Since:
    1.2

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `apply​(GraphChangeHandler handler)` | Calls appropriate methods on the handler to "replay" this change.
    `boolean` | `isNoop()` | Returns true if this diff is simply a placeholder and does not perform any actual operation.
    `void` | `undo​(GraphChangeHandler handler)` | Calls appropriate methods on the handler to revert this change.

- - ### Method Detail

    - #### isNoop

          boolean isNoop()

      Returns true if this diff is simply a placeholder and does not perform any actual operation.

    - #### apply

          void apply​(GraphChangeHandler handler)

      Calls appropriate methods on the handler to "replay" this change.

    - #### undo

          void undo​(GraphChangeHandler handler)

      Calls appropriate methods on the handler to revert this change.