# Class MutableObjectChange

java.lang.Object
org.apache.cayenne.commitlog.model.MutableObjectChange

All Implemented Interfaces:
  `ObjectChange`

public class MutableObjectChange extends Object implements ObjectChange
A mutable implementation of `ObjectChange`.

Since:
  4.0

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `MutableObjectChange(ObjectId preCommitId)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `attributeChanged(String property, Object oldValue, Object newValue)`
  `Map<String, ? extends AttributeChange>`
  `getAttributeChanges()`
  `Map<String, ? extends PropertyChange>`
  `getChanges()`
  `ObjectId`
  `getPostCommitId()`
  `ObjectId`
  `getPreCommitId()`
  `Map<String, ? extends ToManyRelationshipChange>`
  `getToManyRelationshipChanges()`
  `Map<String, ? extends ToOneRelationshipChange>`
  `getToOneRelationshipChanges()`
  `ObjectChangeType`
  `getType()`
  `void`
  `setPostCommitId(ObjectId postCommitId)`
  `void`
  `setType(ObjectChangeType changeType)`
  `void`
  `toManyRelationshipConnected(String property, ObjectId value)`
  `void`
  `toManyRelationshipDisconnected(String property, ObjectId value)`
  `void`
  `toOneRelationshipConnected(String property, ObjectId value)`
  `void`
  `toOneRelationshipDisconnected(String property, ObjectId value)`

  ### Methods inherited from class Object

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

- ## Constructor Details

  - ### MutableObjectChange

    public MutableObjectChange(ObjectId preCommitId)

- ## Method Details

  - ### getChanges

    public Map<String, ? extends PropertyChange> getChanges()
    Specified by:
      `getChanges` in interface `ObjectChange`

  - ### getAttributeChanges

    public Map<String, ? extends AttributeChange> getAttributeChanges()
    Specified by:
      `getAttributeChanges` in interface `ObjectChange`

  - ### getToManyRelationshipChanges

    public Map<String, ? extends ToManyRelationshipChange> getToManyRelationshipChanges()
    Specified by:
      `getToManyRelationshipChanges` in interface `ObjectChange`

  - ### getToOneRelationshipChanges

    public Map<String, ? extends ToOneRelationshipChange> getToOneRelationshipChanges()
    Specified by:
      `getToOneRelationshipChanges` in interface `ObjectChange`

  - ### getType

    public ObjectChangeType getType()
    Specified by:
      `getType` in interface `ObjectChange`

  - ### getPreCommitId

    public ObjectId getPreCommitId()
    Specified by:
      `getPreCommitId` in interface `ObjectChange`

  - ### getPostCommitId

    public ObjectId getPostCommitId()
    Specified by:
      `getPostCommitId` in interface `ObjectChange`

  - ### setPostCommitId

    public void setPostCommitId(ObjectId postCommitId)

  - ### setType

    public void setType(ObjectChangeType changeType)

  - ### toManyRelationshipConnected

    public void toManyRelationshipConnected(String property, ObjectId value)

  - ### toManyRelationshipDisconnected

    public void toManyRelationshipDisconnected(String property, ObjectId value)

  - ### toOneRelationshipConnected

    public void toOneRelationshipConnected(String property, ObjectId value)

  - ### toOneRelationshipDisconnected

    public void toOneRelationshipDisconnected(String property, ObjectId value)

  - ### attributeChanged

    public void attributeChanged(String property, Object oldValue, Object newValue)