Package org.apache.cayenne.access.flush.operation

## Class DbRowOpMerger

- java.lang.Object
- - org.apache.cayenne.access.flush.operation.DbRowOpMerger

- All Implemented Interfaces:
    `BiFunction<DbRowOp,​DbRowOp,​DbRowOp>`, `DbRowOpVisitor<DbRowOp>`

      public class DbRowOpMerger
      extends Object
      implements DbRowOpVisitor<DbRowOp>, BiFunction<DbRowOp,​DbRowOp,​DbRowOp>

  BiFunction that merges two `DbRowOp` changing same object.
  Since:
    4.2

- - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `static DbRowOpMerger` | `INSTANCE` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `DbRowOp` | `apply​(DbRowOp oldValue, DbRowOp newValue)` |
    `DbRowOp` | `visitDelete​(DeleteDbRowOp other)` |
    `DbRowOp` | `visitInsert​(InsertDbRowOp other)` |
    `DbRowOp` | `visitUpdate​(UpdateDbRowOp other)` |

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

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

    - ### Methods inherited from interface java.util.function.BiFunction

      `andThen`

- - ### Field Detail

    - #### INSTANCE

          public static final DbRowOpMerger INSTANCE

  - ### Method Detail

    - #### apply

          public DbRowOp apply​(DbRowOp oldValue,
                               DbRowOp newValue)

      Specified by:
        `apply` in interface `BiFunction<DbRowOp,​DbRowOp,​DbRowOp>`

    - #### visitInsert

          public DbRowOp visitInsert​(InsertDbRowOp other)

      Specified by:
        `visitInsert` in interface `DbRowOpVisitor<DbRowOp>`

    - #### visitUpdate

          public DbRowOp visitUpdate​(UpdateDbRowOp other)

      Specified by:
        `visitUpdate` in interface `DbRowOpVisitor<DbRowOp>`

    - #### visitDelete

          public DbRowOp visitDelete​(DeleteDbRowOp other)

      Specified by:
        `visitDelete` in interface `DbRowOpVisitor<DbRowOp>`