public class DynamicLibraryBundle extends Object implements DynamicLookupHelper
An DynamicLibraryBundleInfo
instance is being passed in the constructor,
providing the required information about the tool and glue libraries.
The ClassLoader of it's implementation is also being used to help locating the native libraries.
DynamicLookupHelper
to reset
the ProcAddressTable
.NativeLibrary's open method
Glue native library
GetProcAddress
. (optional)Modifier and Type | Field and Description |
---|---|
protected List<NativeLibrary> |
nativeLibraries |
DEBUG, DEBUG_LOOKUP
Constructor and Description |
---|
DynamicLibraryBundle(DynamicLibraryBundleInfo info)
Instantiates and loads all
NativeLibrary s incl. |
Modifier and Type | Method and Description |
---|---|
void |
destroy()
Unload all
NativeLibrary s, and remove all references. |
long |
dynamicLookupFunction(String funcName)
Returns the function handle for function 'funcName'.
|
DynamicLibraryBundleInfo |
getBundleInfo() |
static RunnableExecutor |
getDefaultRunnableExecutor()
Returns an AWT-EDT
RunnableExecutor implementation if AWT is available, otherwise RunnableExecutor.currentThreadExecutor . |
int |
getGlueLibLoadedNumber() |
int |
getGlueLibNumber() |
protected long |
getToolGetProcAddressHandle() |
int |
getToolLibLoadedNumber() |
int |
getToolLibNumber() |
boolean |
isFunctionAvailable(String funcName)
Queries whether function 'funcName' is available.
|
boolean |
isGlueLibComplete() |
boolean |
isGlueLibLoaded(int i) |
boolean |
isLibComplete() |
boolean |
isToolLibComplete() |
boolean |
isToolLibLoaded() |
boolean |
isToolLibLoaded(int i) |
protected NativeLibrary |
loadFirstAvailable(List<String> libNames,
ClassLoader loader,
boolean global) |
protected final List<NativeLibrary> nativeLibraries
public DynamicLibraryBundle(DynamicLibraryBundleInfo info)
NativeLibrary
s incl. JNI libraries.
The ClassLoader of the DynamicLibraryBundleInfo
implementation class
is being used to help locating the native libraries.
public static RunnableExecutor getDefaultRunnableExecutor()
RunnableExecutor
implementation if AWT is available, otherwise RunnableExecutor.currentThreadExecutor
.public final void destroy()
NativeLibrary
s, and remove all references.public final boolean isLibComplete()
public final int getToolLibNumber()
public final int getToolLibLoadedNumber()
public final boolean isToolLibComplete()
DynamicLibraryBundleInfo.getToolLibNames()
public final boolean isToolLibLoaded()
public final boolean isToolLibLoaded(int i)
public final int getGlueLibNumber()
public final int getGlueLibLoadedNumber()
public final boolean isGlueLibComplete()
DynamicLibraryBundleInfo.getGlueLibNames()
public final boolean isGlueLibLoaded(int i)
public final DynamicLibraryBundleInfo getBundleInfo()
protected final long getToolGetProcAddressHandle()
protected final NativeLibrary loadFirstAvailable(List<String> libNames, ClassLoader loader, boolean global)
public final long dynamicLookupFunction(String funcName)
DynamicLookupHelper
dynamicLookupFunction
in interface DynamicLookupHelper
public final boolean isFunctionAvailable(String funcName)
DynamicLookupHelper
isFunctionAvailable
in interface DynamicLookupHelper