Package org.eclipse.team.core.mapping

## Interface IResourceDiff

All Superinterfaces:
  `IDiff`, `ITwoWayDiff`

All Known Implementing Classes:
  `ResourceDiff`

    public interface IResourceDiff
    extends ITwoWayDiff

A resource diff represents the changes between two resources. The diff can be used to describe the change between an ancestor and remote, an ancestor and local or between the local and a remote for two-way comparisons.

Since:
  3.2
See Also:
  `IDiffTree`
Restriction:
  This interface is not intended to be implemented by clients. Clients that need to create deltas should instead use or subclass `ResourceDiff`

### Field Summary

Fields
`static int` `DESCRIPTION` Change constant (bit mask) indicating that a project's description has changed.
`static int` `OPEN` Change constant (bit mask) indicating that the resource was opened or closed.

### Fields inherited from interface org.eclipse.team.core.diff.IDiff

`ADD, CHANGE, NO_CHANGE, REMOVE`

### Fields inherited from interface org.eclipse.team.core.diff.ITwoWayDiff

`CONTENT, COPY_FROM, MOVE_FROM, MOVE_TO, REPLACE`

### Method Summary

All Methods Instance Methods Abstract Methods
`IFileRevision` `getAfterState()` Return a handle to the file state representing the "after" state of the file used to calculate this diff.
`IFileRevision` `getBeforeState()` Return a handle to the file state representing the "before" state of the file used to calculate this diff.
`IResource` `getResource()` Return the local resource to which this diff applies.

### Methods inherited from interface org.eclipse.team.core.diff.IDiff

`getKind, getPath, toDiffString`

### Methods inherited from interface org.eclipse.team.core.diff.ITwoWayDiff

`getFlags, getFromPath, getToPath`

### Field Detail

#### OPEN

    static final int OPEN

Change constant (bit mask) indicating that the resource was opened or closed. For example, if the current state of the resource is open then it was previously closed.

See Also:
  `ITwoWayDiff.getFlags()`, `IResourceDelta.OPEN`, Constant Field Values

#### DESCRIPTION

    static final int DESCRIPTION

Change constant (bit mask) indicating that a project's description has changed.

See Also:
  `ITwoWayDiff.getFlags()`, `IResourceDelta.DESCRIPTION`, Constant Field Values

### Method Detail

#### getResource

    IResource getResource()

Return the local resource to which this diff applies.

Returns:
  the local resource to which this diff applies

#### getBeforeState

    IFileRevision getBeforeState()

Return a handle to the file state representing the "before" state of the file used to calculate this diff. A `null` is returned if the resource is not a file or if the file does not exist in the before state. If a file state is returned, clients should still check the `IFileState.exists()` method to see if the file existed in the before state.

Returns:
  a handle to the file state representing the "before" state used to calculate this diff

#### getAfterState

    IFileRevision getAfterState()

Return a handle to the file state representing the "after" state of the file used to calculate this diff. A `null` is returned if the resource is not a file or if the file does not exist in the after state. If a file state is returned, clients should still check the `IFileState.exists()` method to see if the file existed in the after state.

Returns:
  a handle to the file state representing the "before" state used to calculate this diff