Package org.eclipse.team.core.history

## Interface IFileHistory

All Known Implementing Classes:
  `FileHistory`

    public interface IFileHistory

Provides a complete set of IFileRevisions that make up this IFileHistory.

Since:
  3.2
Restriction:
  This interface is not intended to be implemented by clients. Clients can instead subclass `FileHistory`.

### Method Summary

All Methods Instance Methods Abstract Methods
`IFileRevision[]` `getContributors​(IFileRevision revision)` Returns the direct predecessors of the given revision.
`IFileRevision` `getFileRevision​(String id)` Returns the file revision that corresponds to the passed in content identifier.
`IFileRevision[]` `getFileRevisions()` Returns the complete set of file revisions for this file (this includes all predecessors and all descendents)
`IFileRevision[]` `getTargets​(IFileRevision revision)` Returns all of the direct descendents of the given in file revision.

### Method Detail

#### getFileRevisions

    IFileRevision[] getFileRevisions()

Returns the complete set of file revisions for this file (this includes all predecessors and all descendents)

Returns:
  an array containing all of the file revisions for this particular file or an empty array if this file has no revisions

#### getFileRevision

    IFileRevision getFileRevision​(String id)

Returns the file revision that corresponds to the passed in content identifier.

Parameters:
  `id` - the content identifier that uniquely identifies a file revision.
Returns:
  the file revision corresponding to the passed in content id or null if no file revisions match the given id

#### getContributors

    IFileRevision[] getContributors​(IFileRevision revision)

Returns the direct predecessors of the given revision. If the file revision was the result of a single modification, then only a single predecessor will be returned. However, if the revision was the result of a merge of multiple revisions, then all revisions that were merge may be returned depending on whether the history provider tracks merges.

Parameters:
  `revision` - a file revision revision
Returns:
  the direct predecessors of the given file revision or an empty array if there are no predecessors

#### getTargets

    IFileRevision[] getTargets​(IFileRevision revision)

Returns all of the direct descendents of the given in file revision. Multiple revisions may be returned if the given revision is a branch point or was merged into another revision. Some history providers may not track branches or merges, in which case a singel descendant may be returned.

Parameters:
  `revision` - the file revision that acts as the root
Returns:
  an array containing all of the the descendents or an empty array if the revision has no direct descendents