Class Vfs

All Implemented Interfaces:
PointerInterface

public class Vfs extends Object
Entry point for using GIO functionality.

https://docs.gtk.org/gio/class.Vfs.html

  • Constructor Details

  • Method Details

    • getClassHandler

      public static ClassHandler getClassHandler()
    • getFileForPath

      public File getFileForPath(@Nonnull Str path)
      Gets a #GFile for @path.
      Parameters:
      path - a string containing a VFS path.
      Returns:
      a #GFile. Free the returned object with g_object_unref().
    • getFileForPath

      public File getFileForPath(String path)
      Gets a #GFile for @path.
      Parameters:
      path - a string containing a VFS path.
      Returns:
      a #GFile. Free the returned object with g_object_unref().
    • getFileForUri

      public File getFileForUri(@Nonnull Str uri)
      Gets a #GFile for @uri.

      This operation never fails, but the returned object
      might not support any I/O operation if the URI
      is malformed or if the URI scheme is not supported.
      Parameters:
      uri - a string containing a URI
      Returns:
      a #GFile. Free the returned object with g_object_unref().
    • getFileForUri

      public File getFileForUri(String uri)
      Gets a #GFile for @uri.

      This operation never fails, but the returned object
      might not support any I/O operation if the URI
      is malformed or if the URI scheme is not supported.
      Parameters:
      uri - a string containing a URI
      Returns:
      a #GFile. Free the returned object with g_object_unref().
    • isActive

      public boolean isActive()
      Checks if the VFS is active.
      Returns:
      %TRUE if construction of the @vfs was successful and it is now active.
    • parseName

      public File parseName(@Nonnull Str parse_name)
      This operation never fails, but the returned object might
      not support any I/O operations if the @parse_name cannot
      be parsed by the #GVfs module.
      Parameters:
      parse_name - a string to be parsed by the VFS module.
      Returns:
      a #GFile for the given @parse_name. Free the returned object with g_object_unref().
    • parseName

      public File parseName(String parse_name)
      This operation never fails, but the returned object might
      not support any I/O operations if the @parse_name cannot
      be parsed by the #GVfs module.
      Parameters:
      parse_name - a string to be parsed by the VFS module.
      Returns:
      a #GFile for the given @parse_name. Free the returned object with g_object_unref().
    • registerUriScheme

      public boolean registerUriScheme(@Nonnull Str scheme, Vfs.OnVfsFileLookupFunc uri_func, @Nullable Pointer uri_data, Vfs.OnDestroyNotify uri_destroy, Vfs.OnVfsFileLookupFunc parse_name_func, @Nullable Pointer parse_name_data, Vfs.OnDestroyNotify parse_name_destroy)
      Registers @uri_func and @parse_name_func as the #GFile URI and parse name
      lookup functions for URIs with a scheme matching @scheme.
      Note that @scheme is registered only within the running application, as
      opposed to desktop-wide as it happens with GVfs backends.

      When a #GFile is requested with an URI containing @scheme (e.g. through
      g_file_new_for_uri()), @uri_func will be called to allow a custom
      constructor. The implementation of @uri_func should not be blocking, and
      must not call g_vfs_register_uri_scheme() or g_vfs_unregister_uri_scheme().

      When g_file_parse_name() is called with a parse name obtained from such file,
      @parse_name_func will be called to allow the #GFile to be created again. In
      that case, it's responsibility of @parse_name_func to make sure the parse
      name matches what the custom #GFile implementation returned when
      g_file_get_parse_name() was previously called. The implementation of
      @parse_name_func should not be blocking, and must not call
      g_vfs_register_uri_scheme() or g_vfs_unregister_uri_scheme().

      It's an error to call this function twice with the same scheme. To unregister
      a custom URI scheme, use g_vfs_unregister_uri_scheme().
      Parameters:
      scheme - an URI scheme, e.g. "http"
      uri_func - a #GVfsFileLookupFunc
      uri_data - custom data passed to be passed to @uri_func, or %NULL
      uri_destroy - function to be called when unregistering the URI scheme, or when @vfs is disposed, to free the resources used by the URI lookup function
      parse_name_func - a #GVfsFileLookupFunc
      parse_name_data - custom data passed to be passed to @parse_name_func, or %NULL
      parse_name_destroy - function to be called when unregistering the URI scheme, or when @vfs is disposed, to free the resources used by the parse name lookup function
      Returns:
      %TRUE if @scheme was successfully registered, or %FALSE if a handler for @scheme already exists.
    • registerUriScheme

      public boolean registerUriScheme(String scheme, Vfs.OnVfsFileLookupFunc uri_func, @Nullable Pointer uri_data, Vfs.OnDestroyNotify uri_destroy, Vfs.OnVfsFileLookupFunc parse_name_func, @Nullable Pointer parse_name_data, Vfs.OnDestroyNotify parse_name_destroy)
      Registers @uri_func and @parse_name_func as the #GFile URI and parse name
      lookup functions for URIs with a scheme matching @scheme.
      Note that @scheme is registered only within the running application, as
      opposed to desktop-wide as it happens with GVfs backends.

      When a #GFile is requested with an URI containing @scheme (e.g. through
      g_file_new_for_uri()), @uri_func will be called to allow a custom
      constructor. The implementation of @uri_func should not be blocking, and
      must not call g_vfs_register_uri_scheme() or g_vfs_unregister_uri_scheme().

      When g_file_parse_name() is called with a parse name obtained from such file,
      @parse_name_func will be called to allow the #GFile to be created again. In
      that case, it's responsibility of @parse_name_func to make sure the parse
      name matches what the custom #GFile implementation returned when
      g_file_get_parse_name() was previously called. The implementation of
      @parse_name_func should not be blocking, and must not call
      g_vfs_register_uri_scheme() or g_vfs_unregister_uri_scheme().

      It's an error to call this function twice with the same scheme. To unregister
      a custom URI scheme, use g_vfs_unregister_uri_scheme().
      Parameters:
      scheme - an URI scheme, e.g. "http"
      uri_func - a #GVfsFileLookupFunc
      uri_data - custom data passed to be passed to @uri_func, or %NULL
      uri_destroy - function to be called when unregistering the URI scheme, or when @vfs is disposed, to free the resources used by the URI lookup function
      parse_name_func - a #GVfsFileLookupFunc
      parse_name_data - custom data passed to be passed to @parse_name_func, or %NULL
      parse_name_destroy - function to be called when unregistering the URI scheme, or when @vfs is disposed, to free the resources used by the parse name lookup function
      Returns:
      %TRUE if @scheme was successfully registered, or %FALSE if a handler for @scheme already exists.
    • unregisterUriScheme

      public boolean unregisterUriScheme(@Nonnull Str scheme)
      Unregisters the URI handler for @scheme previously registered with
      g_vfs_register_uri_scheme().
      Parameters:
      scheme - an URI scheme, e.g. "http"
      Returns:
      %TRUE if @scheme was successfully unregistered, or %FALSE if a handler for @scheme does not exist.
    • unregisterUriScheme

      public boolean unregisterUriScheme(String scheme)
      Unregisters the URI handler for @scheme previously registered with
      g_vfs_register_uri_scheme().
      Parameters:
      scheme - an URI scheme, e.g. "http"
      Returns:
      %TRUE if @scheme was successfully unregistered, or %FALSE if a handler for @scheme does not exist.
    • getDefault

      public static Vfs getDefault()
      Gets the default #GVfs for the system.
      Returns:
      a #GVfs, which will be the local file system #GVfs if no other implementation is available.
    • getLocal

      public static Vfs getLocal()
      Gets the local #GVfs for the system.
      Returns:
      a #GVfs.
    • getTypeID

      public static long getTypeID()
    • getParentTypeID

      public static long getParentTypeID()
    • getTypeSize

      public static TypeSystem.TypeSize getTypeSize()
    • getParentTypeSize

      public static TypeSystem.TypeSize getParentTypeSize()
    • getInstanceSize

      public static int getInstanceSize()