## org.gjt.sp.jedit.io
Class VFSManager

    java.lang.Object
      org.gjt.sp.jedit.io.VFSManager

    public class VFSManager

extends java.lang.Object

jEdit's virtual filesystem allows it to transparently edit files stored elsewhere than the local filesystem, for example on an FTP site. See the `VFS` class for implementation details.

Note that most of the jEdit API is not thread-safe, so special care must be taken when making jEdit API calls. Also, it is not safe to call `SwingUtilities.invokeAndWait()` from a work request; it can cause a deadlock if the given runnable then later calls `waitForRequests()`.

Field Summary
`static java.lang.String` `SERVICE` The service type.

Method Summary
`static void` `error(java.awt.Component comp, java.lang.String path, java.lang.String messageProp, java.lang.Object[] args)` Reports an I/O error.
`static void` `error(java.io.IOException e, java.lang.String path, java.awt.Component comp)` Handle an I/O error.
`static boolean` `errorOccurred()` Returns if the last request caused an error.
`static VFS` `getFileVFS()` Returns the local filesystem VFS.
`static WorkThreadPool` `getIOThreadPool()` Returns the I/O thread pool.
`static int` `getRequestCount()` Returns the number of pending I/O requests.
`static VFS` `getUrlVFS()` Returns the URL VFS.
`static VFS` `getVFSForPath(java.lang.String path)` Returns the VFS for the specified path.
`static VFS` `getVFSForProtocol(java.lang.String protocol)` Returns the VFS for the specified protocol.
`static java.lang.String[]` `getVFSs()` Returns a list of all registered filesystems.
`static void` `init()` Do not call.
`static void` `runInAWTThread(java.lang.Runnable run)` Deprecated. Using that method, when you run a task in AWT Thread, it will wait for all background task causing some unwanted delays. If you need calling a task after a background work, please add your runnable to the EDT thread yourself at the end of the background task
`static void` `runInWorkThread(java.lang.Runnable run)` Deprecated. You should not use this method, this threadpool links the AWT Threads and Work threads.
`static void` `sendVFSUpdate(VFS vfs, java.lang.String path, boolean parent)` Sends a VFS update message.
`static void` `start()` Do not call.
`static void` `waitForRequests()` Returns when all pending requests are complete.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### SERVICE

    public static final java.lang.String SERVICE

  The service type. See `ServiceManager`.

  Since:
    jEdit 4.2pre1
  See Also:
    Constant Field Values

Method Detail

### init

    public static void init()

  Do not call.

### start

    public static void start()

  Do not call.

### getFileVFS

    public static VFS getFileVFS()

  Returns the local filesystem VFS.

  Since:
    jEdit 2.5pre1

### getUrlVFS

    public static VFS getUrlVFS()

  Returns the URL VFS.

  Since:
    jEdit 2.5pre1

### getVFSForProtocol

    public static VFS getVFSForProtocol(java.lang.String protocol)

  Returns the VFS for the specified protocol.

  Parameters:
    `protocol` - The protocol
  Since:
    jEdit 2.5pre1

### getVFSForPath

    public static VFS getVFSForPath(java.lang.String path)

  Returns the VFS for the specified path.

  Parameters:
    `path` - The path
  Since:
    jEdit 2.6pre4

### getVFSs

    public static java.lang.String[] getVFSs()

  Returns a list of all registered filesystems.

  Since:
    jEdit 4.2pre1

### getIOThreadPool

    public static WorkThreadPool getIOThreadPool()

  Returns the I/O thread pool.

### waitForRequests

    public static void waitForRequests()

  Returns when all pending requests are complete.

  Since:
    jEdit 2.5pre1

### errorOccurred

    public static boolean errorOccurred()

  Returns if the last request caused an error.

### getRequestCount

    public static int getRequestCount()

  Returns the number of pending I/O requests.

### runInAWTThread

    @Deprecated
    public static void runInAWTThread(java.lang.Runnable run)

  Deprecated. Using that method, when you run a task in AWT Thread, it will wait for all background task causing some unwanted delays. If you need calling a task after a background work, please add your runnable to the EDT thread yourself at the end of the background task

  Executes the specified runnable in the AWT thread once all pending I/O requests are complete.

  Since:
    jEdit 2.5pre1
  See Also:
    `ThreadUtilities.runInDispatchThread(Runnable)`, `ThreadUtilities.runInDispatchThreadAndWait(Runnable)`

### runInWorkThread

    @Deprecated
    public static void runInWorkThread(java.lang.Runnable run)

  Deprecated. You should not use this method, this threadpool links the AWT Threads and Work threads.

  Executes the specified runnable in one of the I/O threads.

  Since:
    jEdit 2.6pre2
  See Also:
    `ThreadUtilities.runInBackground(org.gjt.sp.util.Task)`, `ThreadUtilities.runInBackground(Runnable)`

### error

    public static void error(java.io.IOException e,
                             java.lang.String path,
                             java.awt.Component comp)

  Handle an I/O error.

  Since:
    jEdit 4.3pre3

### error

    public static void error(java.awt.Component comp,
                             java.lang.String path,
                             java.lang.String messageProp,
                             java.lang.Object[] args)

  Reports an I/O error.

  Parameters:
    `comp` - The component
    `path` - The path name that caused the error
    `messageProp` - The error message property name
    `args` - Positional parameters
  Since:
    jEdit 4.0pre3

### sendVFSUpdate

    public static void sendVFSUpdate(VFS vfs,
                                     java.lang.String path,
                                     boolean parent)

  Sends a VFS update message.

  Parameters:
    `vfs` - The VFS
    `path` - The path that changed
    `parent` - True if an update should be sent for the path's parent too
  Since:
    jEdit 2.6pre4