diff --git a/bindings/java/src/jni/javasigar.c b/bindings/java/src/jni/javasigar.c index 6ce875ae..d29647e8 100644 --- a/bindings/java/src/jni/javasigar.c +++ b/bindings/java/src/jni/javasigar.c @@ -824,7 +824,7 @@ JNIEXPORT jobjectArray SIGAR_JNIx(getNetConnectionList) return connarray; } -JNIEXPORT void SIGAR_JNI(NetStat_nstat) +JNIEXPORT void SIGAR_JNI(NetStat_stat) (JNIEnv *env, jobject obj, jobject sigar_obj, jint flags) { int status; @@ -843,6 +843,7 @@ JNIEXPORT void SIGAR_JNI(NetStat_nstat) cls = JENV->GetObjectClass(env, obj); + JAVA_SIGAR_INIT_FIELDS_NETSTAT(cls); JAVA_SIGAR_SET_FIELDS_NETSTAT(cls, obj, netstat); if (sizeof(tcp_states[0]) == sizeof(netstat.tcp_states[0])) { diff --git a/bindings/java/src/org/hyperic/sigar/NetStat.java b/bindings/java/src/org/hyperic/sigar/NetStat.java index 5e0f04bf..839b94d4 100644 --- a/bindings/java/src/org/hyperic/sigar/NetStat.java +++ b/bindings/java/src/org/hyperic/sigar/NetStat.java @@ -1,25 +1,13 @@ package org.hyperic.sigar; -import java.util.HashMap; -import java.util.Iterator; -import java.util.Map; - public class NetStat { - private Sigar sigar; - private Map tcpInbound; - private Map tcpOutbound; - private int[] tcpStates; - private int tcpInboundTotal, tcpOutboundTotal; - //XXX not implemented on all platforms yet - private static final boolean hasNstat = - "true".equals(System.getProperty("sigar.netstat.native")); + protected Sigar sigar; - private native void nstat(Sigar sigar, int flags) throws SigarException; + protected int[] tcpStates; + protected int tcpInboundTotal, tcpOutboundTotal; - public NetStat() { - this.sigar = new Sigar(); - } + public native void stat(Sigar sigar, int flags) throws SigarException; public NetStat(Sigar sigar) throws SigarException { this.sigar = sigar; @@ -28,107 +16,7 @@ public class NetStat { NetFlags.CONN_SERVER | NetFlags.CONN_CLIENT | NetFlags.CONN_TCP; - if (hasNstat) { - nstat(sigar, flags); - } - else { - stat(flags); - } - } - - public static int[] newTcpStateArray() { - int[] states = new int[NetFlags.TCP_UNKNOWN]; - for (int i=0; i