diff options
author | elias <[email protected]> | 2006-07-03 11:59:10 +0000 |
---|---|---|
committer | elias <[email protected]> | 2006-07-03 11:59:10 +0000 |
commit | b67427552f48a96eb5169fc4887c42a30559b5a1 (patch) | |
tree | 3861d0307d75e53d3681095ab620c0f91b6c8dc0 /coreAPI | |
parent | cf0b36ca538568bdeb85cfab1acc2b1d60b4cb51 (diff) |
added DefaultControllerEnvironment.loadLibrary convenience method for plugins. It will also respect the new net.java.games.input.librarypath property for locating natives (useful for applets). Removed the mac os x jinput-osx-legacy library loading, as it is not necessary anymore with the combined 10.3/10.4 library
git-svn-id: file:///home/sven/projects/JOGL/git-svn/svn-server-sync/jinput/trunk@145 e343933a-64c8-49c5-92b1-88f2ce3e89e8
Diffstat (limited to 'coreAPI')
-rw-r--r-- | coreAPI/src/java/net/java/games/input/DefaultControllerEnvironment.java | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/coreAPI/src/java/net/java/games/input/DefaultControllerEnvironment.java b/coreAPI/src/java/net/java/games/input/DefaultControllerEnvironment.java index da1305e..9507bd2 100644 --- a/coreAPI/src/java/net/java/games/input/DefaultControllerEnvironment.java +++ b/coreAPI/src/java/net/java/games/input/DefaultControllerEnvironment.java @@ -92,6 +92,27 @@ class DefaultControllerEnvironment extends ControllerEnvironment { private PluginClassLoader pluginLoader = new PluginClassLoader(); private Collection loadedPlugins = new ArrayList(); + + /** + * Static utility method for loading native libraries. + * It will try to load from either the path given by + * the net.java.games.input.librarypath property + * or through System.loadLibrary(). + * + */ + static void loadLibrary(final String lib_name) { + AccessController.doPrivileged( + new PrivilegedAction() { + public final Object run() { + String lib_path = System.getProperty("net.java.games.input.librarypath"); + if (lib_path != null) + System.load(lib_path + File.separator + System.mapLibraryName(lib_name)); + else + System.loadLibrary(lib_name); + return null; + } + }); + } /** * Public no-arg constructor. |