public class SnappyLoader
extends java.lang.Object
If you do not want to use folder java.io.tempdir, set the System property org.xerial.snappy.tempdir. For example, to use /tmp/leo as a temporary folder to copy native libraries, use -D option of JVM:
java -Dorg.xerial.snappy.tempdir="/tmp/leo" ...
Modifier and Type | Field and Description |
---|---|
private static SnappyNative |
api |
private static boolean |
isLoaded |
static java.lang.String |
KEY_SNAPPY_DISABLE_BUNDLED_LIBS |
static java.lang.String |
KEY_SNAPPY_LIB_NAME |
static java.lang.String |
KEY_SNAPPY_LIB_PATH |
static java.lang.String |
KEY_SNAPPY_TEMPDIR |
static java.lang.String |
KEY_SNAPPY_USE_SYSTEMLIB |
private static java.io.File |
nativeLibFile |
static java.lang.String |
SNAPPY_SYSTEM_PROPERTIES_FILE |
Constructor and Description |
---|
SnappyLoader() |
Modifier and Type | Method and Description |
---|---|
(package private) static void |
cleanUpExtractedNativeLib() |
private static boolean |
contentsEquals(java.io.InputStream in1,
java.io.InputStream in2) |
private static java.io.File |
extractLibraryFile(java.lang.String libFolderForCurrentOS,
java.lang.String libraryFileName,
java.lang.String targetFolder)
Extract the specified library file to the target folder
|
(package private) static java.io.File |
findNativeLibrary() |
static java.lang.String |
getVersion()
Get the snappy-java version by reading pom.properties embedded in jar.
|
private static boolean |
hasResource(java.lang.String path) |
(package private) static SnappyNative |
load() |
private static void |
loadNativeLibrary()
Load a native library of snappy-java
|
private static void |
loadSnappySystemProperties()
load system properties when configuration file of the name
SNAPPY_SYSTEM_PROPERTIES_FILE is found |
(package private) static void |
setApi(SnappyNative nativeCode)
Set the api instance.
|
public static final java.lang.String SNAPPY_SYSTEM_PROPERTIES_FILE
public static final java.lang.String KEY_SNAPPY_LIB_PATH
public static final java.lang.String KEY_SNAPPY_LIB_NAME
public static final java.lang.String KEY_SNAPPY_TEMPDIR
public static final java.lang.String KEY_SNAPPY_USE_SYSTEMLIB
public static final java.lang.String KEY_SNAPPY_DISABLE_BUNDLED_LIBS
private static volatile boolean isLoaded
private static volatile SnappyNative api
private static java.io.File nativeLibFile
static void cleanUpExtractedNativeLib()
static void setApi(SnappyNative nativeCode)
nativeCode
- private static void loadSnappySystemProperties()
SNAPPY_SYSTEM_PROPERTIES_FILE
is foundstatic SnappyNative load()
private static void loadNativeLibrary()
private static boolean contentsEquals(java.io.InputStream in1, java.io.InputStream in2) throws java.io.IOException
java.io.IOException
private static java.io.File extractLibraryFile(java.lang.String libFolderForCurrentOS, java.lang.String libraryFileName, java.lang.String targetFolder)
libFolderForCurrentOS
- libraryFileName
- targetFolder
- static java.io.File findNativeLibrary()
private static boolean hasResource(java.lang.String path)
public static java.lang.String getVersion()