# Class: com.pnfsoftware.jeb.core.units.UnitChangeEventData

Specific data related to a [J#UnitChange](J#UnitChange) change event issued by a unit.

## Constructor: UnitChangeEventData
- parameter: `type`, type: `int`
- parameter: `target`, type: `java.lang.Object`

Description: Create event data.
parameter: type: change type
parameter: target: target object

## Constructor: UnitChangeEventData
- parameter: `type`, type: `int`
- parameter: `target`, type: `java.lang.Object`
- parameter: `value`, type: `java.lang.Object`

Description: Create event data.
parameter: type: change type
parameter: target: target object
parameter: value: new value

## Constructor: UnitChangeEventData
- parameter: `type`, type: `int`
- parameter: `target`, type: `java.lang.Object`
- parameter: `value`, type: `java.lang.Object`
- parameter: `previousValue`, type: `java.lang.Object`

Description: Create event data.
parameter: type: change type
parameter: target: target object
parameter: value: new value
parameter: previousValue: previous value

## Constructor: UnitChangeEventData
- parameter: `type`, type: `int`
- parameter: `target`, type: `java.lang.Object`
- parameter: `value`, type: `java.lang.Object`
- parameter: `previousValue`, type: `java.lang.Object`
- parameter: `location`, type: `java.lang.Object`

Description: Create event data.
parameter: type: change type
parameter: target: target object
parameter: value: new value
parameter: previousValue: previous value
parameter: location: optional location

## Field: attrmap
Type: `java.util.Map<java.lang.Object,java.lang.Object>`
Description: Additional attributes.

## Field: location
Type: `java.lang.Object`
Description: Optional location associated with the change.

## Field: previousValue
Type: `java.lang.Object`
Description: Previous value.

## Field: target
Type: `java.lang.Object`
Description: Target object.

## Field: type
Type: `int`
Description: Change type.

## Field: value
Type: `java.lang.Object`
Description: New value.

## Static Field: CodeAddition
Type: `int`

Constant value: `7`
Description: this type indicates that new code items were added to the unit.

## Static Field: CommentUpdate
Type: `int`

Constant value: `3`
Description: Unit comment update.

## Static Field: Conversion
Type: `int`

Constant value: `6`
Description: this type indicates that the target object was converted.

## Static Field: CreatedPackage
Type: `int`

Constant value: `4`
Description: Package creation.

## Static Field: LabelUpdate
Type: `int`

Constant value: `2`
Description: Unit label update.

## Static Field: MovedTo
Type: `int`

Constant value: `5`
Description: Unit move.

## Static Field: NameUpdate
Type: `int`

Constant value: `1`
Description: Unit name update.

## Static Field: NonStructuralChange
Type: `int`

Constant value: `9`
Description: generic change type for non\-structural \(superficial\) changes.

## Static Field: StructuralChange
Type: `int`

Constant value: `8`
Description: generic change type for structural changes \(the target object's internal details have substantially changed\).

## Method: attr
- parameter: `key`, type: `java.lang.Object`
- parameter: `value`, type: `java.lang.Object`
- return type: `com.pnfsoftware.jeb.core.units.UnitChangeEventData`

Description: Add an attribute.
parameter: key: attribute key
parameter: value: attribute value
return: this object

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


