From 873849d4aaa58b99a907b942f72c25ada2f26439 Mon Sep 17 00:00:00 2001 From: Doug MacEachern Date: Fri, 6 Apr 2007 13:47:02 +0000 Subject: [PATCH] replace getNetListenAddress with native function --- bindings/java/src/jni/javasigar.c | 16 ++++++++ .../java/src/org/hyperic/sigar/Sigar.java | 37 +------------------ 2 files changed, 18 insertions(+), 35 deletions(-) diff --git a/bindings/java/src/jni/javasigar.c b/bindings/java/src/jni/javasigar.c index 00762e81..c8ab0dd5 100644 --- a/bindings/java/src/jni/javasigar.c +++ b/bindings/java/src/jni/javasigar.c @@ -928,6 +928,22 @@ JNIEXPORT void SIGAR_JNI(NetStat_stat) JENV->SetObjectField(env, obj, id, states); } +JNIEXPORT jstring SIGAR_JNIx(getNetListenAddress) +(JNIEnv *env, jobject sigar_obj, jlong port) +{ + int status; + sigar_net_address_t address; + dSIGAR(NULL); + + status = sigar_net_listen_address_get(sigar, port, &address); + if (status != SIGAR_OK) { + sigar_throw_error(env, jsigar, status); + return NULL; + } + + return jnet_address_to_string(env, sigar, &address); +} + JNIEXPORT jstring SIGAR_JNI(NetConnection_getTypeString) (JNIEnv *env, jobject obj) { diff --git a/bindings/java/src/org/hyperic/sigar/Sigar.java b/bindings/java/src/org/hyperic/sigar/Sigar.java index c5cee29a..daf28efa 100644 --- a/bindings/java/src/org/hyperic/sigar/Sigar.java +++ b/bindings/java/src/org/hyperic/sigar/Sigar.java @@ -749,43 +749,10 @@ public class Sigar implements SigarProxy { /** * Get the TCP listen address for the given port. - * If the port is not bound to a specific address, - * the loopback address will be returned. * If there is not a listener on the given port, null will be returned. */ - public String getNetListenAddress(long port) - throws SigarException { - - int flags = NetFlags.CONN_SERVER | NetFlags.CONN_TCP; - - NetConnection[] connections = - getNetConnectionList(flags); - - for (int i=0; i