Some updates.

This commit is contained in:
Adam Murdoch
2012-10-10 16:28:54 +11:00
parent d70a620089
commit 827387dd78
2 changed files with 407 additions and 396 deletions

View File

@@ -8,7 +8,7 @@ allprojects {
repositories { repositories {
mavenCentral() mavenCentral()
maven { url "https://gradle.artifactoryonline.com/gradle/libs-releases-local" } maven { url "http://repo.gradle.org/gradle/libs-releases-local" }
} }
dependencies { dependencies {

View File

@@ -7,12 +7,15 @@ These APIs support Java 5 and later. Some of these APIs overlap with APIs availa
## Available bindings ## Available bindings
### Generic ### System information
* Get PID of current process.
* Get kernel name and version. * Get kernel name and version.
* Get machine architecture. * Get machine architecture.
### Processes
* Get the PID of the current process.
### Terminal and console ### Terminal and console
These bindings work for both the UNIX terminal and the Windows console: These bindings work for both the UNIX terminal and the Windows console:
@@ -36,7 +39,7 @@ These bindings work for both the UNIX terminal and the Windows console:
## Supported platforms ## Supported platforms
Currently ported to OS X, Linux and Windows, with some support for Solaris and FreeBSD. Tested on: Currently ported to OS X, Linux and Windows. Support for Solaris and FreeBSD is a work in progress. Tested on:
* OS X 10.7.4, 10.8 (x86_64), 10.6.7 (i386) * OS X 10.7.4, 10.8 (x86_64), 10.6.7 (i386)
* Ubunutu 12.04 (amd64), 8.04.4 (i386, amd64) * Ubunutu 12.04 (amd64), 8.04.4 (i386, amd64)
@@ -49,13 +52,15 @@ Include `native-platform.jar` and `native-platform-${os}-${arch}.jar` in your cl
this: this:
repositories { repositories {
maven { url "https://gradle.artifactoryonline.com/gradle/libs-releases-local" } maven { url "http://repo.gradle.org/gradle/libs-releases-local" }
} }
dependencies { dependencies {
compile "net.rubygrapefruit:native-platform:0.1" compile "net.rubygrapefruit:native-platform:0.1"
} }
You can also download [here](http://repo.gradle.org/gradle/libs-releases-local/net/rubygrapefruit/native-platform/0.1)
Some sample code to use the terminal: Some sample code to use the terminal:
import net.rubygrapefruit.platform.Native; import net.rubygrapefruit.platform.Native;
@@ -81,7 +86,7 @@ Fixes to make native library extraction multi-process safe.
### 0.1 ### 0.1
Initial release Initial release.
# Development # Development
@@ -186,3 +191,9 @@ You can run `$INSTALL_DIR/bin/native-platform-test` to run the test application.
### Ideas ### Ideas
* Expose platform-specific HTTP proxy configuration. Query registry on windows to determine IE settings. * Expose platform-specific HTTP proxy configuration. Query registry on windows to determine IE settings.
* Expose native named semaphores, mutexes and condition variables (CreateMutex, CreateSemaphore, CreateEvent, semget, sem_open, etc).
* Expose infromation about network interfaces.
* Fire events when filesystems or network interfaces change in some way.
* Fire events when terminal size changes.
* Fire events when files change.
* Expose system keystores and authentication services.