summaryrefslogtreecommitdiffstats
path: root/java/src
diff options
context:
space:
mode:
authorQuincey Koziol <koziol@hdfgroup.org>2016-06-14 23:07:03 (GMT)
committerQuincey Koziol <koziol@hdfgroup.org>2016-06-14 23:07:03 (GMT)
commitd3396a79532601bf22e385f94b12e55dfb2c3bd0 (patch)
treededf3566ea2ebf40c2d7475e8a50a3f2f0d57774 /java/src
parent7a9e13afdb134bafc070cf8bd2087a84fd0d2334 (diff)
downloadhdf5-d3396a79532601bf22e385f94b12e55dfb2c3bd0.zip
hdf5-d3396a79532601bf22e385f94b12e55dfb2c3bd0.tar.gz
hdf5-d3396a79532601bf22e385f94b12e55dfb2c3bd0.tar.bz2
[svn-r30075] Description:
Bring object/dataset/group/named datatype features from revise_chunks branch to trunk. Also CMake support for h5format_convert and a bunch of misc. cleanups. Tested on: MacOSX/64 10.11.5 (amazon) w/serial, parallel & production (h5committest forthcoming)
Diffstat (limited to 'java/src')
-rw-r--r--java/src/hdf/hdf5lib/H5.java105
-rw-r--r--java/src/jni/h5dImp.c27
-rw-r--r--java/src/jni/h5dImp.h18
-rw-r--r--java/src/jni/h5gImp.c27
-rw-r--r--java/src/jni/h5gImp.h18
-rw-r--r--java/src/jni/h5oImp.c27
-rw-r--r--java/src/jni/h5oImp.h18
-rw-r--r--java/src/jni/h5tImp.c25
-rw-r--r--java/src/jni/h5tImp.h18
9 files changed, 283 insertions, 0 deletions
diff --git a/java/src/hdf/hdf5lib/H5.java b/java/src/hdf/hdf5lib/H5.java
index e7f5fe8..e555a4f 100644
--- a/java/src/hdf/hdf5lib/H5.java
+++ b/java/src/hdf/hdf5lib/H5.java
@@ -2072,6 +2072,31 @@ public class H5 implements java.io.Serializable {
public synchronized static native int H5Dwrite_VLStrings(long dataset_id, long mem_type_id, long mem_space_id,
long file_space_id, long xfer_plist_id, Object[] buf) throws HDF5LibraryException, NullPointerException;
+ /**
+ * H5Dflush causes all buffers associated with a dataset to be immediately flushed to disk without removing the
+ * data from the cache.
+ *
+ * @param dset_id
+ * IN: Identifier of the dataset to be flushed.
+ *
+ * @exception HDF5LibraryException
+ * - Error from the HDF-5 Library.
+ **/
+ public synchronized static native void H5Dflush(long dset_id) throws HDF5LibraryException;
+
+ /**
+ * H5Drefresh causes all buffers associated with a dataset to be cleared and immediately re-loaded with updated
+ * contents from disk. This function essentially closes the dataset, evicts all metadata associated with it
+ * from the cache, and then re-opens the dataset. The reopened dataset is automatically re-registered with the same ID.
+ *
+ * @param dset_id
+ * IN: Identifier of the dataset to be refreshed.
+ *
+ * @exception HDF5LibraryException
+ * - Error from the HDF-5 Library.
+ **/
+ public synchronized static native void H5Drefresh(long dset_id) throws HDF5LibraryException;
+
// /////// unimplemented ////////
// H5_DLL herr_t H5Ddebug(hid_t dset_id);
// herr_t H5Dgather(hid_t src_space_id, const void *src_buf, hid_t type_id,
@@ -3289,6 +3314,32 @@ public class H5 implements java.io.Serializable {
private synchronized static native long _H5Gopen2(long loc_id, String name, long gapl_id)
throws HDF5LibraryException, NullPointerException;
+ /**
+ * H5Gflush causes all buffers associated with a group to be immediately flushed to disk without
+ * removing the data from the cache.
+ *
+ * @param group_id
+ * IN: Identifier of the group to be flushed.
+ *
+ * @exception HDF5LibraryException
+ * - Error from the HDF-5 Library.
+ **/
+ public synchronized static native void H5Gflush(long group_id) throws HDF5LibraryException;
+
+ /**
+ * H5Grefresh causes all buffers associated with a group to be cleared and immediately re-loaded
+ * with updated contents from disk. This function essentially closes the group, evicts all metadata
+ * associated with it from the cache, and then re-opens the group. The reopened group is automatically
+ * re-registered with the same ID.
+ *
+ * @param group_id
+ * IN: Identifier of the group to be refreshed.
+ *
+ * @exception HDF5LibraryException
+ * - Error from the HDF-5 Library.
+ **/
+ public synchronized static native void H5Grefresh(long group_id) throws HDF5LibraryException;
+
// ////////////////////////////////////////////////////////////
// //
// H5I: HDF5 1.8 Identifier Interface API Functions //
@@ -4290,6 +4341,34 @@ public class H5 implements java.io.Serializable {
public synchronized static native long _H5Oopen_by_idx(long loc_id, String group_name,
int idx_type, int order, long n, long lapl_id) throws HDF5LibraryException, NullPointerException;
+ /**
+ * H5Oflush causes all buffers associated with an object to be immediately flushed to disk without removing
+ * the data from the cache. object_id can be any named object associated with an HDF5 file including a
+ * dataset, a group, or a committed datatype.
+ *
+ * @param object_id
+ * IN: Identifier of the object to be flushed.
+ *
+ * @exception HDF5LibraryException
+ * - Error from the HDF-5 Library.
+ **/
+ public synchronized static native void H5Oflush(long object_id) throws HDF5LibraryException;
+
+ /**
+ * H5Orefresh causes all buffers associated with an object to be cleared and immediately re-loaded with
+ * updated contents from disk. This function essentially closes the object, evicts all metadata associated
+ * with it from the cache, and then re-opens the object. The reopened object is automatically re-registered
+ * with the same ID. object_id can be any named object associated with an HDF5 file including a
+ * dataset, a group, or a committed datatype.
+ *
+ * @param object_id
+ * IN: Identifier of the object to be refreshed.
+ *
+ * @exception HDF5LibraryException
+ * - Error from the HDF-5 Library.
+ **/
+ public synchronized static native void H5Orefresh(long object_id) throws HDF5LibraryException;
+
// /////// unimplemented ////////
// ////////////////////////////////////////////////////////////
@@ -9155,6 +9234,32 @@ public class H5 implements java.io.Serializable {
private synchronized static native long _H5Tvlen_create(long base_id) throws HDF5LibraryException;
+ /**
+ * H5Tflush causes all buffers associated with a committed datatype to be immediately flushed to disk
+ * without removing the data from the cache.
+ *
+ * @param dtype_id
+ * IN: Identifier of the committed datatype to be flushed.
+ *
+ * @exception HDF5LibraryException
+ * - Error from the HDF-5 Library.
+ **/
+ public synchronized static native void H5Tflush(long dtype_id) throws HDF5LibraryException;
+
+ /**
+ * H5Trefresh causes all buffers associated with a committed datatype to be cleared and immediately
+ * re-loaded with updated contents from disk. This function essentially closes the datatype, evicts
+ * all metadata associated with it from the cache, and then re-opens the datatype. The reopened datatype
+ * is automatically re-registered with the same ID.
+ *
+ * @param dtype_id
+ * IN: Identifier of the committed datatype to be refreshed.
+ *
+ * @exception HDF5LibraryException
+ * - Error from the HDF-5 Library.
+ **/
+ public synchronized static native void H5Trefresh(long dtype_id) throws HDF5LibraryException;
+
// /////// unimplemented ////////
// H5T_conv_t H5Tfind(int src_id, int dst_id, H5T_cdata_t *pcdata);
diff --git a/java/src/jni/h5dImp.c b/java/src/jni/h5dImp.c
index 330752b..9bcbd5f 100644
--- a/java/src/jni/h5dImp.c
+++ b/java/src/jni/h5dImp.c
@@ -1779,6 +1779,33 @@ Java_hdf_hdf5lib_H5_H5Diterate
return (jint)status;
} /* end Java_hdf_hdf5lib_H5_H5Diterate */
+/*
+ * Class: hdf_hdf5lib_H5
+ * Method: H5Dflush
+ * Signature: (J)V
+ */
+JNIEXPORT void JNICALL
+Java_hdf_hdf5lib_H5_H5Dflush
+ (JNIEnv *env, jclass clss, jlong loc_id)
+{
+ if (H5Dflush((hid_t)loc_id) < 0)
+ h5libraryError(env);
+}
+
+/*
+ * Class: hdf_hdf5lib_H5
+ * Method: H5Drefresh
+ * Signature: (J)V
+ */
+JNIEXPORT void JNICALL
+Java_hdf_hdf5lib_H5_H5Drefresh
+ (JNIEnv *env, jclass clss, jlong loc_id)
+{
+ if (H5Drefresh((hid_t)loc_id) < 0)
+ h5libraryError(env);
+}
+
+
#ifdef __cplusplus
} /* end extern "C" */
diff --git a/java/src/jni/h5dImp.h b/java/src/jni/h5dImp.h
index a44d465..2a91334 100644
--- a/java/src/jni/h5dImp.h
+++ b/java/src/jni/h5dImp.h
@@ -348,6 +348,24 @@ JNIEXPORT jint JNICALL
Java_hdf_hdf5lib_H5_H5Diterate
(JNIEnv*, jclass, jbyteArray, jlong, jlong, jobject, jobject);
+/*
+ * Class: hdf_hdf5lib_H5
+ * Method: H5Dflush
+ * Signature: (J)V
+ */
+JNIEXPORT void JNICALL
+Java_hdf_hdf5lib_H5_H5Dflush
+ (JNIEnv*, jclass, jlong);
+
+/*
+ * Class: hdf_hdf5lib_H5
+ * Method: H5Drefresh
+ * Signature: (J)V
+ */
+JNIEXPORT void JNICALL
+Java_hdf_hdf5lib_H5_H5Drefresh
+ (JNIEnv*, jclass, jlong);
+
#ifdef __cplusplus
} /* end extern "C" */
#endif /* __cplusplus */
diff --git a/java/src/jni/h5gImp.c b/java/src/jni/h5gImp.c
index 649ddde1..a2c0de0 100644
--- a/java/src/jni/h5gImp.c
+++ b/java/src/jni/h5gImp.c
@@ -260,6 +260,33 @@ Java_hdf_hdf5lib_H5_H5Gget_1info_1by_1idx
return create_H5G_info_t(env, group_info);
} /* end Java_hdf_hdf5lib_H5_H5Gget_1info_1by_1idx */
+/*
+ * Class: hdf_hdf5lib_H5
+ * Method: H5Gflush
+ * Signature: (J)V
+ */
+JNIEXPORT void JNICALL
+Java_hdf_hdf5lib_H5_H5Gflush
+ (JNIEnv *env, jclass clss, jlong loc_id)
+{
+ if (H5Gflush((hid_t)loc_id) < 0)
+ h5libraryError(env);
+} /* end Java_hdf_hdf5lib_H5_H5Gflush */
+
+/*
+ * Class: hdf_hdf5lib_H5
+ * Method: H5Grefresh
+ * Signature: (J)V
+ */
+JNIEXPORT void JNICALL
+Java_hdf_hdf5lib_H5_H5Grefresh
+ (JNIEnv *env, jclass clss, jlong loc_id)
+{
+ if (H5Grefresh((hid_t)loc_id) < 0)
+ h5libraryError(env);
+} /* end Java_hdf_hdf5lib_H5_H5Grefresh */
+
+
#ifdef __cplusplus
} /* end extern "C" */
diff --git a/java/src/jni/h5gImp.h b/java/src/jni/h5gImp.h
index 05c1e39..3113689 100644
--- a/java/src/jni/h5gImp.h
+++ b/java/src/jni/h5gImp.h
@@ -97,6 +97,24 @@ JNIEXPORT jobject JNICALL
Java_hdf_hdf5lib_H5_H5Gget_1info_1by_1idx
(JNIEnv*, jclass, jlong, jstring, jint, jint, jlong, jlong);
+/*
+ * Class: hdf_hdf5lib_H5
+ * Method: H5Gflush
+ * Signature: (J)V
+ */
+JNIEXPORT void JNICALL
+Java_hdf_hdf5lib_H5_H5Gflush
+ (JNIEnv*, jclass, jlong);
+
+/*
+ * Class: hdf_hdf5lib_H5
+ * Method: H5Grefresh
+ * Signature: (J)V
+ */
+JNIEXPORT void JNICALL
+Java_hdf_hdf5lib_H5_H5Grefresh
+ (JNIEnv*, jclass, jlong);
+
#ifdef __cplusplus
} /* end extern "C" */
#endif /* __cplusplus */
diff --git a/java/src/jni/h5oImp.c b/java/src/jni/h5oImp.c
index 21723b8..872bb4c 100644
--- a/java/src/jni/h5oImp.c
+++ b/java/src/jni/h5oImp.c
@@ -779,6 +779,33 @@ Java_hdf_hdf5lib_H5__1H5Oopen_1by_1idx
return (jlong)retVal;
} /* end Java_hdf_hdf5lib_H5__1H5Oopen_1by_1idx */
+/*
+ * Class: hdf_hdf5lib_H5
+ * Method: H5Oflush
+ * Signature: (J)V
+ */
+JNIEXPORT void JNICALL
+Java_hdf_hdf5lib_H5_H5Oflush
+ (JNIEnv *env, jclass clss, jlong loc_id)
+{
+ if (H5Oflush((hid_t)loc_id) < 0)
+ h5libraryError(env);
+} /* end Java_hdf_hdf5lib_H5_H5Oflush */
+
+/*
+ * Class: hdf_hdf5lib_H5
+ * Method: H5Orefresh
+ * Signature: (J)V
+ */
+JNIEXPORT void JNICALL
+Java_hdf_hdf5lib_H5_H5Orefresh
+ (JNIEnv *env, jclass clss, jlong loc_id)
+{
+ if (H5Orefresh((hid_t)loc_id) < 0)
+ h5libraryError(env);
+} /* end Java_hdf_hdf5lib_H5_H5Orefresh */
+
+
#ifdef __cplusplus
} /* end extern "C" */
diff --git a/java/src/jni/h5oImp.h b/java/src/jni/h5oImp.h
index 29e08e9..293dc2e 100644
--- a/java/src/jni/h5oImp.h
+++ b/java/src/jni/h5oImp.h
@@ -186,6 +186,24 @@ JNIEXPORT jlong JNICALL
Java_hdf_hdf5lib_H5__1H5Oopen_1by_1idx
(JNIEnv*, jclass, jlong, jstring, jint, jint, jlong, jlong);
+/*
+ * Class: hdf_hdf5lib_H5
+ * Method: H5Oflush
+ * Signature: (J)V
+ */
+JNIEXPORT void JNICALL
+Java_hdf_hdf5lib_H5_H5Oflush
+ (JNIEnv*, jclass, jlong);
+
+/*
+ * Class: hdf_hdf5lib_H5
+ * Method: H5Orefresh
+ * Signature: (J)V
+ */
+JNIEXPORT void JNICALL
+Java_hdf_hdf5lib_H5_H5Orefresh
+ (JNIEnv*, jclass, jlong);
+
#ifdef __cplusplus
} /* end extern "C" */
#endif /* __cplusplus */
diff --git a/java/src/jni/h5tImp.c b/java/src/jni/h5tImp.c
index dc052bc..55e16f8 100644
--- a/java/src/jni/h5tImp.c
+++ b/java/src/jni/h5tImp.c
@@ -1640,6 +1640,31 @@ Java_hdf_hdf5lib_H5_H5Tconvert
} /* end else */
} /* end Java_hdf_hdf5lib_H5_H5Tconvert */
+/*
+ * Class: hdf_hdf5lib_H5
+ * Method: H5Tflush
+ * Signature: (J)V
+ */
+JNIEXPORT void JNICALL
+Java_hdf_hdf5lib_H5_H5Tflush(JNIEnv *env, jclass clss, jlong loc_id)
+{
+ if (H5Tflush((hid_t)loc_id) < 0)
+ h5libraryError(env);
+}
+
+/*
+ * Class: hdf_hdf5lib_H5
+ * Method: H5Trefresh
+ * Signature: (J)V
+ */
+JNIEXPORT void JNICALL
+Java_hdf_hdf5lib_H5_H5Trefresh(JNIEnv *env, jclass clss, jlong loc_id)
+{
+ if (H5Trefresh((hid_t)loc_id) < 0)
+ h5libraryError(env);
+}
+
+
#ifdef __cplusplus
} /* end extern "C" */
diff --git a/java/src/jni/h5tImp.h b/java/src/jni/h5tImp.h
index 9e6779d..e614082 100644
--- a/java/src/jni/h5tImp.h
+++ b/java/src/jni/h5tImp.h
@@ -608,6 +608,24 @@ JNIEXPORT void JNICALL
Java_hdf_hdf5lib_H5_H5Tconvert
(JNIEnv *, jclass, jlong, jlong, jlong, jbyteArray, jbyteArray, jlong);
+/*
+ * Class: hdf_hdf5lib_H5
+ * Method: H5Tflush
+ * Signature: (J)V
+ */
+JNIEXPORT void JNICALL
+Java_hdf_hdf5lib_H5_H5Tflush
+ (JNIEnv*, jclass, jlong);
+
+/*
+ * Class: hdf_hdf5lib_H5
+ * Method: H5Trefresh
+ * Signature: (J)V
+ */
+JNIEXPORT void JNICALL
+Java_hdf_hdf5lib_H5_H5Trefresh
+ (JNIEnv*, jclass, jlong);
+
#ifdef __cplusplus
} /* end extern "C" */
#endif /* __cplusplus */