# Class: com.pnfsoftware.jeb.core.properties.impl.PropertyChangeObject

Record property changes without applying them, nor notifying listeners, until a call to [#commit()](#commit()) is made.

## Constructor: PropertyChangeObject

Description: Create an empty change set.

## Method: add
- parameter: `pm`, type: `com.pnfsoftware.jeb.core.properties.IPropertyManager`
- parameter: `fqname`, type: `java.lang.String`
- parameter: `value`, type: `java.lang.Object`
- parameter: `pd`, type: `com.pnfsoftware.jeb.core.properties.IPropertyDefinition`
- return type: `com.pnfsoftware.jeb.core.properties.impl.PropertyChangeObject.Entry`

Description: Record a property change for a property manager.
parameter: pm: property manager owning the change
parameter: fqname: fully\-qualified property name
parameter: value: value to be stored, or `null` to clear the property
parameter: pd: property definition associated with the change
return: the recorded entry

## Method: commit

Description: Commit all recorded changes and notify listeners.

## Method: commit
- parameter: `notify`, type: `boolean`

Description: Commit all recorded changes.
parameter: notify: ignored in the current implementation; listeners are always notified

## Method: get
- parameter: `fqname`, type: `java.lang.String`
- return type: `java.lang.Object`

Description: Get the currently recorded value for a fully\-qualified property name.
parameter: fqname: fully\-qualified property name
return: the recorded value, or `null` if none exists

## Method: has
- parameter: `fqname`, type: `java.lang.String`
- return type: `boolean`

Description: Determine whether a change for a fully\-qualified property name is already recorded.
parameter: fqname: fully\-qualified property name
return: `true` if a change exists for that property

## Method: isEmpty
- return type: `boolean`

Description: Determine whether no property change has been recorded.
return: `true` if the change set is empty

## Method: size
- return type: `int`

Description: Get the number of recorded property changes.
return: the number of tracked entries

## Method: toString
- return type: `java.lang.String`


