Class TextFileStoreSnapshot

java.lang.Object
org.eclipse.handly.snapshot.Snapshot
org.eclipse.handly.snapshot.TextFileStoreSnapshot
All Implemented Interfaces:
ISnapshot

public final class TextFileStoreSnapshot extends Snapshot
A snapshot of a text IFileStore. Thread-safe.
  • Constructor Summary

    Constructors
    Constructor
    Description
    TextFileStoreSnapshot(org.eclipse.core.filesystem.IFileStore fileStore)
    Constructs a new snapshot of the given text file store.
    TextFileStoreSnapshot(org.eclipse.core.filesystem.IFileStore fileStore, Charset charset)
    Constructs a new snapshot of the given text file store using the given charset for decoding the file store's contents.
  • Method Summary

    Modifier and Type
    Method
    Description
    boolean
    Returns whether the file existed at the moment this snapshot was taken.
    A snapshot returns the same contents until it expires.
    org.eclipse.core.runtime.IStatus
    Returns whether an I/O error was encountered while reading the file.
    protected Boolean
    Predicts whether this snapshot is equal to the given snapshot without actually obtaining snapshot contents.

    Methods inherited from class org.eclipse.handly.snapshot.Snapshot

    isEqualTo

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • TextFileStoreSnapshot

      public TextFileStoreSnapshot(org.eclipse.core.filesystem.IFileStore fileStore)
      Constructs a new snapshot of the given text file store. The snapshot may use a default charset for decoding the file store's contents if a more specific charset could not be detected for the file store.
      Parameters:
      fileStore - must not be null
    • TextFileStoreSnapshot

      public TextFileStoreSnapshot(org.eclipse.core.filesystem.IFileStore fileStore, Charset charset)
      Constructs a new snapshot of the given text file store using the given charset for decoding the file store's contents.
      Parameters:
      fileStore - must not be null
      charset - must not be null
  • Method Details

    • getContents

      public String getContents()
      Description copied from interface: ISnapshot
      A snapshot returns the same contents until it expires. This is the contents of the underlying resource or buffer at the moment the snapshot was taken. Expired snapshots return null.

      Protractedly holding on to the returned contents is not recommended, as it may potentially consume significant amount of space.

      Returns:
      the contents of the snapshot, or null if the snapshot has expired
    • getStatus

      public org.eclipse.core.runtime.IStatus getStatus()
      Returns whether an I/O error was encountered while reading the file.
      Returns:
      an error status if an I/O error was encountered, or OK status otherwise
    • exists

      public boolean exists()
      Returns whether the file existed at the moment this snapshot was taken.
      Returns:
      true if the file existed at the moment this snapshot was taken, and false otherwise
    • predictEquality

      protected Boolean predictEquality(Snapshot other)
      Description copied from class: Snapshot
      Predicts whether this snapshot is equal to the given snapshot without actually obtaining snapshot contents. Must return null if cannot tell for sure. Any non-null result must meet the contract of ISnapshot.isEqualTo(ISnapshot).
      Overrides:
      predictEquality in class Snapshot
      Parameters:
      other - the other snapshot (not null and not identical to the receiver)
      Returns:
      true if the snapshots are predicted to be equal, false if the snapshots are predicted to be unequal, and null if there is no prediction