Module lmdbjava
Package org.lmdbjava

Class Library

java.lang.Object
org.lmdbjava.Library

public final class Library extends Object
JNR-FFI interface to LMDB.

For performance reasons pointers are used rather than structs.

  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static interface 
    Custom comparator callback used by mdb_set_compare.
    static interface 
    JNR API for MDB-defined C functions.
    static final class 
    Structure to wrap a native MDB_envinfo.
    static final class 
    Structure to wrap a native MDB_stat.
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final String
    Java system property name that can be set to disable automatic extraction of the LMDB system library from the LmdbJava JAR.
    static final String
    Java system property name that can be set to the path of an existing directory into which the LMDB system library will be extracted from the LmdbJava JAR.
    static final String
    Java system property name that can be set to provide a custom path to a external LMDB system library.
    static final jnr.ffi.Runtime
     
    static final boolean
    Indicates whether automatic extraction of the LMDB system library is permitted.
  • Method Summary

    Methods inherited from class java.lang.Object

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

    • DISABLE_EXTRACT_PROP

      public static final String DISABLE_EXTRACT_PROP
      Java system property name that can be set to disable automatic extraction of the LMDB system library from the LmdbJava JAR. This may be desirable if an operating system-provided LMDB system library is preferred (eg operating system package management, vendor support, special compiler flags, security auditing, profile guided optimization builds, faster startup time by avoiding the library copy etc).
      See Also:
    • LMDB_EXTRACT_DIR_PROP

      public static final String LMDB_EXTRACT_DIR_PROP
      Java system property name that can be set to the path of an existing directory into which the LMDB system library will be extracted from the LmdbJava JAR. If unspecified the LMDB system library is extracted to the java.io.tmpdir. Ignored if the LMDB system library is not being extracted from the LmdbJava JAR (as would be the case if other system properties defined in Library have been set).
      See Also:
    • LMDB_NATIVE_LIB_PROP

      public static final String LMDB_NATIVE_LIB_PROP
      Java system property name that can be set to provide a custom path to a external LMDB system library. If set, the system property DISABLE_EXTRACT_PROP will be overridden.
      See Also:
    • SHOULD_EXTRACT

      public static final boolean SHOULD_EXTRACT
      Indicates whether automatic extraction of the LMDB system library is permitted.
    • RUNTIME

      public static final jnr.ffi.Runtime RUNTIME