jmx 0.2.1

JMX client library for Rust
Documentation
# JMX for Rust
A [JMX](https://en.wikipedia.org/wiki/Java_Management_Extensions) client library for Rust.

This library allows querying Java JMX attributes from a rust project.


## Building
The `jmx-rust` crate is based off of the `j4rs` crate.

As of version 0.5.1 `j4rs` is able to locate the JDK automatically.


### Tests
Tests work but starting a test JMX server located under `tests/jmxserver`.
This server is then used by the tests to check the library.

For this to work the test server must be compiled and the correct `java` command
must be available in the `$PATH`:

```bash
cd tests/jmxserver
javac TestServer.java
cd ../..

export PATH="/path/to/java/bin:$PATH"
cargo test --features thread-support
```


## Usage
Creating a client:
```rust
extern crate jmx;

static JMX_PORT: i32 = 1234;

fn main() {
    // Create a connection to the remote JMX server.
    let url = MBeanAddress::service_url(format!(
        "service:jmx:rmi://localhost:{}/jndi/rmi://localhost:{}/jmxrmi",
        JMX_PORT, JMX_PORT
    ));
    let client = MBeanClient::connect(url)
        .expect("Failed to connect to the JMX server");

    // Fetch some attribute from the server.
    let threads: i32 = client.get_attribute("FOO:name=ServerBean", "ThreadCount").unwrap();
}
```