Class Library

java.lang.Object
com.kenai.jffi.Library

public final class Library extends Object
Represents a native library
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final int
    All symbols in the library are made available to other libraries
    static final int
    Perform lazy binding.
    static final int
    Symbols in this library are not made available to other libraries
    static final int
    Resolve all symbols when loading the library
  • Method Summary

    Modifier and Type
    Method
    Description
    protected void
     
    static final Library
    getCachedInstance(String name, int flags)
    Gets a handle for the named library.
    static final Library
    Gets a handle to the default library.
    static final String
    Gets the current error string from dlopen/LoadLibrary.
    final long
    Gets the address of a symbol within the Library.
    static final Library
    openLibrary(String name, int flags)
    Gets a handle for the named library.

    Methods inherited from class java.lang.Object

    clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • LAZY

      public static final int LAZY
      Perform lazy binding. Only resolve symbols as needed
      See Also:
    • NOW

      public static final int NOW
      Resolve all symbols when loading the library
      See Also:
    • LOCAL

      public static final int LOCAL
      Symbols in this library are not made available to other libraries
      See Also:
    • GLOBAL

      public static final int GLOBAL
      All symbols in the library are made available to other libraries
      See Also:
  • Method Details

    • getDefault

      public static final Library getDefault()
      Gets a handle to the default library.
      Returns:
      A Library instance representing the default library.
    • getCachedInstance

      public static final Library getCachedInstance(String name, int flags)
      Gets a handle for the named library.
      Parameters:
      name - The name or path of the library to open.
      flags - The library flags (e.g. LAZY, NOW, LOCAL, GLOBAL)
      Returns:
      A Library instance representing the named library, or null if the library could not be opened.
    • openLibrary

      public static final Library openLibrary(String name, int flags)
      Gets a handle for the named library. Note This will not cache the instance, nor will it return a cached instance. Only use when you really need a new handle for the library.
      Parameters:
      name - The name or path of the library to open.
      flags - The library flags (e.g. LAZY, NOW, LOCAL, GLOBAL)
      Returns:
      A Library instance representing the named library, or null if the library cannot be opened.
    • getSymbolAddress

      public final long getSymbolAddress(String name)
      Gets the address of a symbol within the Library.
      Parameters:
      name - The name of the symbol to locate.
      Returns:
      The address of the symbol within the current address space.
    • getLastError

      public static final String getLastError()
      Gets the current error string from dlopen/LoadLibrary.
      Returns:
      A String describing the last error.
    • finalize

      protected void finalize() throws Throwable
      Overrides:
      finalize in class Object
      Throws:
      Throwable