aboutsummaryrefslogtreecommitdiffstats
path: root/coreAPI
diff options
context:
space:
mode:
authorelias <[email protected]>2006-07-03 11:59:10 +0000
committerelias <[email protected]>2006-07-03 11:59:10 +0000
commitb67427552f48a96eb5169fc4887c42a30559b5a1 (patch)
tree3861d0307d75e53d3681095ab620c0f91b6c8dc0 /coreAPI
parentcf0b36ca538568bdeb85cfab1acc2b1d60b4cb51 (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.java21
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.