# Interface ITouchpointData

public interface ITouchpointData
ITouchpoint data instances contain the additional information needed by a touchpoint to execute each engine phase it participates in. This includes the sequence of instruction statements to be executed during each phase, and any additional supporting data needed to perform the phase.

Since:
  2.0
See Also:
  - `MetadataFactory.createTouchpointData(Map)`
Restriction:
  This interface is not intended to be implemented by clients.
Restriction:
  This interface is not intended to be extended by clients.

## Method Summary

Modifier and Type
Method
Description
`boolean`
`equals(Object obj)`
Returns whether this TouchpointData is equal to the given object.
`ITouchpointInstruction`
`getInstruction(String instructionKey)`
Returns the touchpoint instruction corresponding to the given key.
`Map<String, ITouchpointInstruction>`
`getInstructions()`
Returns an unmodifiable map of the touchpoint instructions.

## Method Details

### getInstruction

ITouchpointInstruction getInstruction(String instructionKey)
Returns the touchpoint instruction corresponding to the given key.

Returns:
  the touchpoint instruction corresponding to the given key, or `null` if no such instruction exists.

### getInstructions

Map<String, ITouchpointInstruction> getInstructions()
Returns an unmodifiable map of the touchpoint instructions. The map keys are strings, and the values are instances of `ITouchpointInstruction`.

Returns:
  the touchpoint instructions

### equals

boolean equals(Object obj)
Returns whether this TouchpointData is equal to the given object. This method returns true if:

- Both this object and the given object are of type ITouchpointData
- The result of getInstructions() on both objects are equal

Overrides:
  `equals` in class `Object`