Interface ICoreTextFileBufferProvider


  • public interface ICoreTextFileBufferProvider
    An object capable of providing ITextFileBuffer for an underlying file. Essentially, combines an ITextFileBufferManager and a file location.
    • Method Summary

      All Methods Static Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      void connect​(org.eclipse.core.runtime.IProgressMonitor monitor)
      Connects the underlying file buffer to this provider.
      void disconnect​(org.eclipse.core.runtime.IProgressMonitor monitor)
      Disconnects the underlying file buffer from this provider.
      static ICoreTextFileBufferProvider forFileStore​(org.eclipse.core.filesystem.IFileStore fileStore, org.eclipse.core.filebuffers.ITextFileBufferManager bufferManager)
      Returns an ICoreTextFileBufferProvider for the given file store and buffer manager.
      static ICoreTextFileBufferProvider forLocation​(org.eclipse.core.runtime.IPath location, org.eclipse.core.filebuffers.LocationKind locationKind, org.eclipse.core.filebuffers.ITextFileBufferManager bufferManager)
      Returns an ICoreTextFileBufferProvider for the given file location and buffer manager.
      org.eclipse.core.filebuffers.ITextFileBuffer getBuffer()
      Returns the ITextFileBuffer managed for the underlying file, or null if there is no such buffer.
      org.eclipse.core.filebuffers.ITextFileBufferManager getBufferManager()
      Returns the underlying ITextFileBufferManager.
    • Method Detail

      • connect

        void connect​(org.eclipse.core.runtime.IProgressMonitor monitor)
              throws org.eclipse.core.runtime.CoreException
        Connects the underlying file buffer to this provider. After this method has successfully completed it is guaranteed that each invocation of getBuffer() returns the same buffer instance until disconnect is called.
        Parameters:
        monitor - a progress monitor, or null if progress reporting is not desired. The caller must not rely on IProgressMonitor.done() having been called by the receiver
        Throws:
        org.eclipse.core.runtime.CoreException - if the file buffer could not be connected
        org.eclipse.core.runtime.OperationCanceledException - if this method is canceled
      • disconnect

        void disconnect​(org.eclipse.core.runtime.IProgressMonitor monitor)
                 throws org.eclipse.core.runtime.CoreException
        Disconnects the underlying file buffer from this provider. After this method has successfully completed there is no guarantee that getBuffer() will return a valid buffer.
        Parameters:
        monitor - a progress monitor, or null if progress reporting is not desired. The caller must not rely on IProgressMonitor.done() having been called by the receiver
        Throws:
        org.eclipse.core.runtime.CoreException - if the file buffer could not be disconnected
        org.eclipse.core.runtime.OperationCanceledException - if this method is canceled
      • getBuffer

        org.eclipse.core.filebuffers.ITextFileBuffer getBuffer()
        Returns the ITextFileBuffer managed for the underlying file, or null if there is no such buffer.
        Returns:
        the buffer managed for the underlying file, or null if none
      • getBufferManager

        org.eclipse.core.filebuffers.ITextFileBufferManager getBufferManager()
        Returns the underlying ITextFileBufferManager.
        Returns:
        the underlying buffer manager (never null)
      • forLocation

        static ICoreTextFileBufferProvider forLocation​(org.eclipse.core.runtime.IPath location,
                                                       org.eclipse.core.filebuffers.LocationKind locationKind,
                                                       org.eclipse.core.filebuffers.ITextFileBufferManager bufferManager)
        Returns an ICoreTextFileBufferProvider for the given file location and buffer manager.
        Parameters:
        location - not null
        locationKind - not null
        bufferManager - not null
        Returns:
        a buffer provider for the given file location and buffer manager (never null)
      • forFileStore

        static ICoreTextFileBufferProvider forFileStore​(org.eclipse.core.filesystem.IFileStore fileStore,
                                                        org.eclipse.core.filebuffers.ITextFileBufferManager bufferManager)
        Returns an ICoreTextFileBufferProvider for the given file store and buffer manager.
        Parameters:
        fileStore - not null
        bufferManager - not null
        Returns:
        a buffer provider for the given file store and buffer manager (never null)