## 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 error, java.lang.Object[] args)` Deprecated. Call the other `error()` method instead.
`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 java.util.Enumeration<VFS>` `getFilesystems()` Deprecated. Use `getVFSs()` instead.
`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` `getVFSByName(java.lang.String name)` Deprecated. Use `getVFSForProtocol()` instead.
`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` `registerVFS(java.lang.String protocol, VFS vfs)` Deprecated. Write a `services.xml` file instead; see `ServiceManager`.
`static void` `runInAWTThread(java.lang.Runnable run)` Executes the specified runnable in the AWT thread once all pending I/O requests are complete.
`static void` `runInWorkThread(java.lang.Runnable run)` Executes the specified runnable in one of the I/O 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

### getVFSByName

    public static VFS getVFSByName(java.lang.String name)

  Deprecated. Use `getVFSForProtocol()` instead.

### 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

### registerVFS

    public static void registerVFS(java.lang.String protocol,
                                   VFS vfs)

  Deprecated. Write a `services.xml` file instead; see `ServiceManager`.

### getFilesystems

    public static java.util.Enumeration<VFS> getFilesystems()

  Deprecated. Use `getVFSs()` instead.

### 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

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

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

  Since:
    jEdit 2.5pre1

### runInWorkThread

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

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

  Since:
    jEdit 2.6pre2

### 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 error,
                             java.lang.Object[] args)

  Deprecated. Call the other `error()` method instead.

### 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