org.apache.cayenne.graph

## Class NodeDiff

- java.lang.Object
- - org.apache.cayenne.graph.NodeDiff

- All Implemented Interfaces:
    Serializable, Comparable<NodeDiff>, GraphDiff
  Direct Known Subclasses:
    ArcCreateOperation, ArcDeleteOperation, NodeCreateOperation, NodeDeleteOperation, NodeIdChangeOperation, NodePropertyChangeOperation

      public abstract class NodeDiff
      extends Object
      implements GraphDiff, Comparable<NodeDiff>

  An abstract superclass of operations on individual nodes and arcs in a digraph.
  Since:
    1.2
  See Also:
    Serialized Form

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected int` | `diffId`
    `protected Object` | `nodeId`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `NodeDiff(Object nodeId)`
    `NodeDiff(Object nodeId, int diffId)`

  - ### Method Summary

    All Methods Instance Methods Abstract Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `abstract void` | `apply(GraphChangeHandler tracker)` Calls appropriate methods on the handler to "replay" this change.
    `int` | `compareTo(NodeDiff o)` Implements a Comparable interface method to compare based on diffId property.
    `int` | `getDiffId()` Returns an id of this diff that can be used for various purposes, such as identifying the order of the diff in a sequence.
    `Object` | `getNodeId()`
    `boolean` | `isNoop()` Returns true if this diff is simply a placeholder and does not perform any actual operation.
    `void` | `setDiffId(int diffId)` Sets an id of this diff that can be used for various purposes, such as identifying the order of the diff in a sequence.
    `abstract void` | `undo(GraphChangeHandler tracker)` Calls appropriate methods on the handler to revert this change.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### diffId

          protected int diffId

    - #### nodeId

          protected Object nodeId

  - ### Constructor Detail

    - #### NodeDiff

          public NodeDiff(Object nodeId)

    - #### NodeDiff

          public NodeDiff(Object nodeId,
                          int diffId)

  - ### Method Detail

    - #### isNoop

          public boolean isNoop()

      Description copied from interface: `GraphDiff`
      Returns true if this diff is simply a placeholder and does not perform any actual operation.
      Specified by:
        `isNoop` in interface `GraphDiff`

    - #### apply

          public abstract void apply(GraphChangeHandler tracker)

      Description copied from interface: `GraphDiff`
      Calls appropriate methods on the handler to "replay" this change.
      Specified by:
        `apply` in interface `GraphDiff`

    - #### undo

          public abstract void undo(GraphChangeHandler tracker)

      Description copied from interface: `GraphDiff`
      Calls appropriate methods on the handler to revert this change.
      Specified by:
        `undo` in interface `GraphDiff`

    - #### getNodeId

          public Object getNodeId()

    - #### getDiffId

          public int getDiffId()

      Returns an id of this diff that can be used for various purposes, such as identifying the order of the diff in a sequence.

    - #### setDiffId

          public void setDiffId(int diffId)

      Sets an id of this diff that can be used for various purposes, such as identifying the order of the diff in a sequence.

    - #### compareTo

          public int compareTo(NodeDiff o)

      Implements a Comparable interface method to compare based on diffId property.
      Specified by:
        `compareTo` in interface `Comparable<NodeDiff>`

Copyright © 2001–2018 Apache Cayenne. All rights reserved.