# 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

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `DbRowOpMerger()`

- ## Method Summary

  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 Object

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

  ### Methods inherited from interface BiFunction

  `andThen`

  ### Methods inherited from interface DbRowOpVisitor

  `visitSoftDelete`

- ## Constructor Details

  - ### DbRowOpMerger

    public DbRowOpMerger()

- ## Method Details

  - ### 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>`