summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--java/src/hdf/hdf5lib/H5.java5
-rw-r--r--java/src/jni/h5pImp.c14
-rw-r--r--java/src/jni/h5pImp.h4
-rw-r--r--java/test/TestH5Plist.java20
4 files changed, 22 insertions, 21 deletions
diff --git a/java/src/hdf/hdf5lib/H5.java b/java/src/hdf/hdf5lib/H5.java
index fbfc40a..b8d9147 100644
--- a/java/src/hdf/hdf5lib/H5.java
+++ b/java/src/hdf/hdf5lib/H5.java
@@ -4360,13 +4360,12 @@ public class H5 implements java.io.Serializable {
* IN: Identifier for the property to query
* @param name
* IN: Name of property to check for
- * @return a positive value if the property exists in the property object; zero if the property does not exist; a
- * negative value if failed
+ * @return a true value if the property exists in the property object; false if the property does not exist;
*
* @exception HDF5LibraryException
* - Error from the HDF-5 Library.
*/
- public synchronized static native int H5Pexist(long plid, String name) throws HDF5LibraryException;
+ public synchronized static native boolean H5Pexist(long plid, String name) throws HDF5LibraryException;
/**
* H5Pget_size retrieves the size of a property's value in bytes
diff --git a/java/src/jni/h5pImp.c b/java/src/jni/h5pImp.c
index f4fee74..d542902 100644
--- a/java/src/jni/h5pImp.c
+++ b/java/src/jni/h5pImp.c
@@ -2162,24 +2162,26 @@ Java_hdf_hdf5lib_H5_H5Pset(JNIEnv *env, jclass clss, jlong plid, jstring name, j
/*
* Class: hdf_hdf5lib_H5
* Method: H5Pexist
- * Signature: (JLjava/lang/String;)J
+ * Signature: (JLjava/lang/String;)Z
*/
-JNIEXPORT jlong JNICALL
+JNIEXPORT jboolean JNICALL
Java_hdf_hdf5lib_H5_H5Pexist(JNIEnv *env, jclass clss, jlong plid, jstring name)
{
- hid_t retVal = -1;
+ htri_t bval = JNI_FALSE;
const char *cstr;
PIN_JAVA_STRING(name, cstr, -1);
- retVal = H5Pexist((hid_t)plid, cstr);
+ bval = H5Pexist((hid_t)plid, cstr);
UNPIN_JAVA_STRING(name, cstr);
- if (retVal < 0)
+ if (bval > 0)
+ bval = JNI_TRUE;
+ else if (bval < 0)
h5libraryError(env);
- return (jlong)retVal;
+ return (jboolean)bval;
} /* end Java_hdf_hdf5lib_H5_H5Pexist */
/*
diff --git a/java/src/jni/h5pImp.h b/java/src/jni/h5pImp.h
index ea1ee52..66488c2 100644
--- a/java/src/jni/h5pImp.h
+++ b/java/src/jni/h5pImp.h
@@ -579,9 +579,9 @@ JNIEXPORT jlong JNICALL Java_hdf_hdf5lib_H5_H5Pset
/*
* Class: hdf_hdf5lib_H5
* Method: H5Pexist
- * Signature: (JLjava/lang/String;)J
+ * Signature: (JLjava/lang/String;)Z
*/
-JNIEXPORT jlong JNICALL Java_hdf_hdf5lib_H5_H5Pexist
+JNIEXPORT jboolean JNICALL Java_hdf_hdf5lib_H5_H5Pexist
(JNIEnv *, jclass, jlong, jstring);
/*
diff --git a/java/test/TestH5Plist.java b/java/test/TestH5Plist.java
index e87909e..024237a 100644
--- a/java/test/TestH5Plist.java
+++ b/java/test/TestH5Plist.java
@@ -284,7 +284,7 @@ public class TestH5Plist {
// Test basic generic property list code. Tests adding properties to generic classes.
@Test
public void testH5P_genprop_basic_class_prop() {
- int status = -1;
+ boolean status = false;
long size = -1; // Generic Property size
long nprops = -1; // Generic Property class number
@@ -306,7 +306,7 @@ public class TestH5Plist {
err.printStackTrace();
fail("H5Pexist plist_class_id: " + err);
}
- assertTrue("H5Pexist plist_class_id "+PROP1_NAME, status == 0);
+ assertFalse("H5Pexist plist_class_id "+PROP1_NAME, status);
// Insert first property into class (with no callbacks)
try {
@@ -337,7 +337,7 @@ public class TestH5Plist {
err.printStackTrace();
fail("H5Pexist plist_class_id: " + err);
}
- assertTrue("H5Pexist plist_class_id "+PROP1_NAME, status > 0);
+ assertTrue("H5Pexist plist_class_id "+PROP1_NAME, status);
// Check the size of the first property
try {
@@ -388,7 +388,7 @@ public class TestH5Plist {
err.printStackTrace();
fail("H5Pexist plist_class_id: " + err);
}
- assertTrue("H5Pexist plist_class_id "+PROP2_NAME, status > 0);
+ assertTrue("H5Pexist plist_class_id "+PROP2_NAME, status);
// Check the size of the second property
try {
@@ -429,7 +429,7 @@ public class TestH5Plist {
err.printStackTrace();
fail("H5Pexist plist_class_id: " + err);
}
- assertTrue("H5Pexist plist_class_id "+PROP3_NAME, status > 0);
+ assertTrue("H5Pexist plist_class_id "+PROP3_NAME, status);
// Check the size of the third property
try {
@@ -635,7 +635,7 @@ public class TestH5Plist {
// removing properties from them.
@Test
public void testH5P_genprop_basic_list_prop() {
- int status = -1;
+ boolean status = false;
long lid1 = -1; // Generic Property list ID
long nprops = -1; // Number of properties in class
@@ -725,7 +725,7 @@ public class TestH5Plist {
err.printStackTrace();
fail("H5Pexist plist_class_id: " + err);
}
- assertTrue("H5Pexist lid1 "+PROP1_NAME, status > 0);
+ assertTrue("H5Pexist lid1 "+PROP1_NAME, status);
try {
status = H5.H5Pexist(lid1, PROP2_NAME);
}
@@ -733,7 +733,7 @@ public class TestH5Plist {
err.printStackTrace();
fail("H5Pexist plist_class_id: " + err);
}
- assertTrue("H5Pexist lid1 "+PROP2_NAME, status > 0);
+ assertTrue("H5Pexist lid1 "+PROP2_NAME, status);
try {
status = H5.H5Pexist(lid1, PROP3_NAME);
}
@@ -741,7 +741,7 @@ public class TestH5Plist {
err.printStackTrace();
fail("H5Pexist plist_class_id: " + err);
}
- assertTrue("H5Pexist lid1 "+PROP3_NAME, status > 0);
+ assertTrue("H5Pexist lid1 "+PROP3_NAME, status);
try {
status = H5.H5Pexist(lid1, PROP4_NAME);
}
@@ -749,7 +749,7 @@ public class TestH5Plist {
err.printStackTrace();
fail("H5Pexist plist_class_id: " + err);
}
- assertTrue("H5Pexist lid1 "+PROP4_NAME, status > 0);
+ assertTrue("H5Pexist lid1 "+PROP4_NAME, status);
}
finally {