Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Eclipse Platform Release 3.0
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.eclipse.core.resources
Interface IFileState

All Superinterfaces:
  IAdaptable, IEncodedStorage, IStorage

public interface IFileState
extends IEncodedStorage, IAdaptable

A previous state of a file stored in the workspace's local history.

Certain methods for updating, deleting, or moving a file cause the "before" contents of the file to be copied to an internal area of the workspace called the local history area thus providing a limited history of earlier states of a file.

Moving or copying a file will cause a copy of its local history to appear at the new location as well as at the original location. Subsequent changes to either file will only affect the local history of the file changed. Deleting a file and creating another one at the same path does not affect the history. If the original file had history, that same history will be available for the new one.

The local history does not track resource properties. File states are volatile; the platform does not guarantee that a certain state will always be in the local history.

This interface is not intended to be implemented by clients.

File state objects implement the `IAdaptable` interface; extensions are managed by the platform's adapter manager.

See Also:
  `IFile`, `IStorage`, `Platform.getAdapterManager()`

Method Summary
`boolean` | `exists()` Returns whether this file state still exists in the local history.
`InputStream` | `getContents()` Returns an open input stream on the contents of this file state.
`IPath` | `getFullPath()` Returns the full path of this file state.
`long` | `getModificationTime()` Returns the modification time of the file.
`String` | `getName()` Returns the name of this file state.
`boolean` | `isReadOnly()` Returns whether this file state is read-only.

Methods inherited from interface org.eclipse.core.resources.IEncodedStorage
`getCharset`

Methods inherited from interface org.eclipse.core.runtime.IAdaptable
`getAdapter`

Method Detail

### exists

    public boolean exists()

  Returns whether this file state still exists in the local history.

  Returns:
    `true` if this state exists, and `false` if it does not

### getContents

    public InputStream getContents()
                            throws CoreException

  Returns an open input stream on the contents of this file state. This refinement of the corresponding `IStorage` method returns an open input stream on the contents this file state represents. The client is responsible for closing the stream when finished.

  Specified by:
    `getContents` in interface `IStorage`
  Returns:
    an input stream containing the contents of the file
  Throws:
    `CoreException` - if this method fails. Reasons include:
    - This state does not exist.

### getFullPath

    public IPath getFullPath()

  Returns the full path of this file state. This refinement of the corresponding `IStorage` method specifies that `IFileState`s always have a path and that path is the full workspace path of the file represented by this state.

  Specified by:
    `getFullPath` in interface `IStorage`
  Returns:
    the path related to the data represented by this storage or `null` if none.
  See Also:
    `IResource.getFullPath()`, `IStorage.getFullPath()`

### getModificationTime

    public long getModificationTime()

  Returns the modification time of the file. If you create a file at 9:00 and modify it at 11:00, the file state added to the history at 11:00 will have 9:00 as its modification time.

  Note that is used only to give the user a general idea of how old this file state is.

  Returns:
    the time of last modification, in milliseconds since January 1, 1970, 00:00:00 GMT.

### getName

    public String getName()

  Returns the name of this file state. This refinement of the corresponding `IStorage` method specifies that `IFileState`s always have a name and that name is equivalent to the last segment of the full path of the resource represented by this state.

  Specified by:
    `getName` in interface `IStorage`
  Returns:
    the name of the data represented by this storage, or `null` if this storage has no name
  See Also:
    `IResource.getName()`, `IStorage.getName()`

### isReadOnly

    public boolean isReadOnly()

  Returns whether this file state is read-only. This refinement of the corresponding `IStorage` method restricts `IFileState`s to always be read-only.

  Specified by:
    `isReadOnly` in interface `IStorage`
  Returns:
    `true` if this storage is read-only
  See Also:
    `IStorage`

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Eclipse Platform Release 3.0
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Guidelines for using Eclipse APIs.

Copyright (c) IBM Corp. and others 2000, 2004. All rights reserved.