Class Dir

All Implemented Interfaces:
Proxy

@Generated("org.javagi.JavaGI") public class Dir extends ProxyInstance
An opaque structure representing an opened directory.
  • Constructor Summary

    Constructors
    Constructor
    Description
    Dir(MemorySegment address)
    Create a Dir proxy instance for the provided memory address.
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    Closes the directory immediately and decrements the reference count.
    The memory layout of the native struct.
    static @Nullable Type
    Get the GType of the Dir class.
    static String
    makeTmp(@Nullable String tmpl)
    Creates a subdirectory in the preferred directory for temporary files (as returned by g_get_tmp_dir()).
    static Dir
    open(String path, int flags)
    Opens a directory for reading.
    Retrieves the name of another entry in the directory, or null.
    ref()
    Increment the reference count of dir.
    void
    Resets the given directory.
    void
    Decrements the reference count of dir.

    Methods inherited from class ProxyInstance

    equals, handle, hashCode

    Methods inherited from class Object

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

    • Dir

      public Dir(MemorySegment address)
      Create a Dir proxy instance for the provided memory address.
      Parameters:
      address - the memory address of the native object
  • Method Details

    • getType

      public static @Nullable Type getType()
      Get the GType of the Dir class.
      Returns:
      the GType
    • getMemoryLayout

      public static MemoryLayout getMemoryLayout()
      The memory layout of the native struct.
      Returns:
      the memory layout
    • open

      public static Dir open(String path, int flags) throws GErrorException
      Opens a directory for reading. The names of the files in the directory can then be retrieved using g_dir_read_name(). Note that the ordering is not defined.
      Parameters:
      path - the path to the directory you are interested in. On Unix in the on-disk encoding. On Windows in UTF-8
      flags - Currently must be set to 0. Reserved for future use.
      Returns:
      a newly allocated GDir on success, null on failure. If non-null, you must free the result with g_dir_close() when you are finished with it.
      Throws:
      GErrorException - see GError
    • makeTmp

      public static String makeTmp(@Nullable String tmpl) throws GErrorException

      Creates a subdirectory in the preferred directory for temporary files (as returned by g_get_tmp_dir()).

      tmpl should be a string in the GLib file name encoding containing a sequence of six 'X' characters, as the parameter to g_mkstemp(). However, unlike these functions, the template should only be a basename, no directory components are allowed. If template is null, a default template is used.

      Note that in contrast to g_mkdtemp() (and mkdtemp()) tmpl is not modified, and might thus be a read-only literal string.

      Parameters:
      tmpl - Template for directory name, as in g_mkdtemp(), basename only, or null for a default template
      Returns:
      The actual name used. This string should be freed with g_free() when not needed any longer and is is in the GLib file name encoding. In case of errors, null is returned and error will be set.
      Throws:
      GErrorException - see GError
      Since:
      2.30
    • close

      public void close()

      Closes the directory immediately and decrements the reference count.

      Once the reference count reaches zero, the GDir structure itself will be freed. Prior to GLib 2.80, GDir was not reference counted.

      It is an error to call any of the GDir methods other than ref() and unref() on a GDir after calling close() on it.

    • readName

      public String readName()

      Retrieves the name of another entry in the directory, or null. The order of entries returned from this function is not defined, and may vary by file system or other operating-system dependent factors.

      null may also be returned in case of errors. On Unix, you can check errno to find out if null was returned because of an error.

      On Unix, the '.' and '..' entries are omitted, and the returned name is in the on-disk encoding.

      On Windows, as is true of all GLib functions which operate on filenames, the returned name is in UTF-8.

      Returns:
      The entry's name or null if there are no more entries. The return value is owned by GLib and must not be modified or freed.
    • ref

      public Dir ref()
      Increment the reference count of dir.
      Returns:
      the same pointer as dir
      Since:
      2.80
    • rewind

      public void rewind()
      Resets the given directory. The next call to g_dir_read_name() will return the first entry again.
    • unref

      public void unref()

      Decrements the reference count of dir.

      Once the reference count reaches zero, the directory will be closed and all resources associated with it will be freed. If close() is called when the reference count is greater than zero, the directory is closed but the GDir structure will not be freed until its reference count reaches zero.

      It is an error to call any of the GDir methods other than ref() and unref() on a GDir after calling close() on it.

      Since:
      2.80