add PdhValidatePath wrapper
This commit is contained in:
parent
98fd0fdbcc
commit
c2296865e2
|
@ -70,6 +70,21 @@ static char *get_error_message(PDH_STATUS status) {
|
|||
}
|
||||
}
|
||||
|
||||
JNIEXPORT jlong SIGAR_JNI(win32_Pdh_validate)
|
||||
(JNIEnv *env, jclass cur, jstring jpath)
|
||||
{
|
||||
PDH_STATUS status;
|
||||
jboolean is_copy;
|
||||
LPCTSTR path = JENV->GetStringChars(env, jpath, &is_copy);
|
||||
|
||||
status = PdhValidatePath(path);
|
||||
if (is_copy) {
|
||||
JENV->ReleaseStringChars(env, jpath, path);
|
||||
}
|
||||
|
||||
return status;
|
||||
}
|
||||
|
||||
JNIEXPORT void SIGAR_JNI(win32_Pdh_pdhConnectMachine)
|
||||
(JNIEnv *env, jobject cur, jstring jhost)
|
||||
{
|
||||
|
|
|
@ -243,6 +243,8 @@ public class Pdh extends Win32 {
|
|||
return pdhGetObjects();
|
||||
}
|
||||
|
||||
public static final native long validate(String path);
|
||||
|
||||
private static final native void pdhConnectMachine(String host)
|
||||
throws Win32Exception;
|
||||
private static final native long pdhOpenQuery() throws Win32Exception;
|
||||
|
|
|
@ -58,19 +58,12 @@ public class TestPdh extends SigarTestCase {
|
|||
if (!trans.equals(path)) {
|
||||
traceln(path + "-->" + trans);
|
||||
}
|
||||
|
||||
traceln(path + " validate: " + Pdh.validate(path));
|
||||
getValue(path);
|
||||
}
|
||||
/* XXX hangs for a while on my XP box
|
||||
|
||||
String bogusKey = "\\Does Not\\Exist";
|
||||
try {
|
||||
new Pdh().getRawValue(bogusKey);
|
||||
assertTrue(false);
|
||||
} catch (Win32Exception e) {
|
||||
assertTrue(true);
|
||||
traceln(bogusKey + "=" + e.getMessage());
|
||||
}
|
||||
*/
|
||||
assertTrue(Pdh.validate(bogusKey) != 0);
|
||||
}
|
||||
|
||||
public void testCounterMap() throws Exception {
|
||||
|
|
Loading…
Reference in New Issue