summaryrefslogtreecommitdiffstats
path: root/java/examples/groups
diff options
context:
space:
mode:
Diffstat (limited to 'java/examples/groups')
-rw-r--r--java/examples/groups/CMakeLists.txt21
-rw-r--r--java/examples/groups/H5Ex_G_Compact.java9
-rw-r--r--java/examples/groups/H5Ex_G_Corder.java13
-rw-r--r--java/examples/groups/H5Ex_G_Create.java7
-rw-r--r--java/examples/groups/H5Ex_G_Intermediate.java23
-rw-r--r--java/examples/groups/H5Ex_G_Iterate.java10
-rw-r--r--java/examples/groups/H5Ex_G_Phase.java13
-rw-r--r--java/examples/groups/H5Ex_G_Traverse.java37
-rw-r--r--java/examples/groups/H5Ex_G_Visit.java33
-rw-r--r--java/examples/groups/JavaGroupExample.sh.in21
-rw-r--r--java/examples/groups/Makefile.am7
11 files changed, 100 insertions, 94 deletions
diff --git a/java/examples/groups/CMakeLists.txt b/java/examples/groups/CMakeLists.txt
index e1ad108..6483f91 100644
--- a/java/examples/groups/CMakeLists.txt
+++ b/java/examples/groups/CMakeLists.txt
@@ -1,4 +1,4 @@
-cmake_minimum_required (VERSION 3.10)
+cmake_minimum_required (VERSION 3.12)
project (HDFJAVA_EXAMPLES_GROUPS Java)
set (CMAKE_VERBOSE_MAKEFILE 1)
@@ -13,7 +13,7 @@ set (HDF_JAVA_EXAMPLES
H5Ex_G_Visit
)
-if (WIN32 OR MINGW)
+if (WIN32)
set (CMAKE_JAVA_INCLUDE_FLAG_SEP ";")
else ()
set (CMAKE_JAVA_INCLUDE_FLAG_SEP ":")
@@ -55,7 +55,7 @@ foreach (h5_file ${HDF_JAVA_TEST_FILES})
endforeach ()
add_custom_target(H5Ex_G_Visit_files ALL COMMENT "Copying files needed by H5Ex_G_Visit tests" DEPENDS ${H5Ex_G_Visit_files_list})
-if (BUILD_TESTING)
+if (BUILD_TESTING AND HDF5_TEST_EXAMPLES AND HDF5_TEST_SERIAL)
get_property (target_name TARGET ${HDF5_JAVA_JNI_LIB_TARGET} PROPERTY OUTPUT_NAME)
set (CMD_ARGS "-Dhdf.hdf5lib.H5.loadLibraryName=${target_name}$<$<CONFIG:Debug>:${CMAKE_DEBUG_POSTFIX}>;")
@@ -63,17 +63,22 @@ if (BUILD_TESTING)
if (NOT example STREQUAL "H5Ex_G_Iterate" AND NOT example STREQUAL "H5Ex_G_Visit")
if (example STREQUAL "H5Ex_G_Compact")
add_test (
- NAME JAVA_groups-${example}-clear-h5s
+ NAME JAVA_groups-${example}-clear-objects
COMMAND ${CMAKE_COMMAND} -E remove
${HDFJAVA_EXAMPLES_BINARY_DIR}/${example}1.h5
${HDFJAVA_EXAMPLES_BINARY_DIR}/${example}2.h5
)
else ()
add_test (
- NAME JAVA_groups-${example}-clear-h5s
+ NAME JAVA_groups-${example}-clear-objects
COMMAND ${CMAKE_COMMAND} -E remove ${HDFJAVA_EXAMPLES_BINARY_DIR}/${example}.h5
)
endif ()
+ else ()
+ add_test (
+ NAME JAVA_groups-${example}-clear-objects
+ COMMAND ${CMAKE_COMMAND} -E echo "${HDFJAVA_EXAMPLES_BINARY_DIR}/${example}.h5 exists"
+ )
endif ()
add_test (
@@ -82,7 +87,7 @@ if (BUILD_TESTING)
${HDFJAVA_EXAMPLES_SOURCE_DIR}/testfiles/examples.groups.${example}.txt
${HDFJAVA_EXAMPLES_GROUPS_BINARY_DIR}/${example}.txt
)
- set_tests_properties (JAVA_groups-${example}-copy-objects PROPERTIES DEPENDS JAVA_groups-${example}-clear-h5s)
+ set_tests_properties (JAVA_groups-${example}-copy-objects PROPERTIES DEPENDS JAVA_groups-${example}-clear-objects)
add_test (
NAME JAVA_groups-${example}
COMMAND "${CMAKE_COMMAND}"
@@ -97,6 +102,8 @@ if (BUILD_TESTING)
-D "TEST_REFERENCE=groups/${example}.txt"
-P "${HDF_RESOURCES_DIR}/jrunTest.cmake"
)
- set_tests_properties (JAVA_groups-${example} PROPERTIES DEPENDS JAVA_groups-${example}-copy-objects)
+ set_tests_properties (JAVA_groups-${example} PROPERTIES
+ DEPENDS JAVA_groups-${example}-copy-objects
+ )
endforeach ()
endif ()
diff --git a/java/examples/groups/H5Ex_G_Compact.java b/java/examples/groups/H5Ex_G_Compact.java
index 7e20c2a..313c9c7 100644
--- a/java/examples/groups/H5Ex_G_Compact.java
+++ b/java/examples/groups/H5Ex_G_Compact.java
@@ -1,12 +1,11 @@
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* Copyright by The HDF Group. *
- * Copyright by the Board of Trustees of the University of Illinois. *
* All rights reserved. *
* *
* This file is part of HDF5. The full HDF5 copyright notice, including *
* terms governing use, modification, and redistribution, is contained in *
* the COPYING file, which can be found at the root of the source code *
- * distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. *
+ * distribution tree, or in https://www.hdfgroup.org/licenses. *
* If you do not have access to either file, you may request a copy from *
* help@hdfgroup.org. *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
@@ -60,9 +59,9 @@ public class H5Ex_G_Compact {
}
public static void CreateGroup() {
- long file_id = -1;
- long group_id = -1;
- long fapl_id = -1;
+ long file_id = HDF5Constants.H5I_INVALID_HID;
+ long group_id = HDF5Constants.H5I_INVALID_HID;
+ long fapl_id = HDF5Constants.H5I_INVALID_HID;
H5G_info_t ginfo;
long size;
diff --git a/java/examples/groups/H5Ex_G_Corder.java b/java/examples/groups/H5Ex_G_Corder.java
index 53d0011..4fa5aa2 100644
--- a/java/examples/groups/H5Ex_G_Corder.java
+++ b/java/examples/groups/H5Ex_G_Corder.java
@@ -1,18 +1,17 @@
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* Copyright by The HDF Group. *
- * Copyright by the Board of Trustees of the University of Illinois. *
* All rights reserved. *
* *
* This file is part of HDF5. The full HDF5 copyright notice, including *
* terms governing use, modification, and redistribution, is contained in *
* the COPYING file, which can be found at the root of the source code *
- * distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. *
+ * distribution tree, or in https://www.hdfgroup.org/licenses. *
* If you do not have access to either file, you may request a copy from *
* help@hdfgroup.org. *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/************************************************************
Creating a file with creation properties and traverse the
- groups in alpabetical and creation order.
+ groups in alphabetical and creation order.
************************************************************/
package examples.groups;
@@ -25,10 +24,10 @@ public class H5Ex_G_Corder {
private static String FILE = "H5Ex_G_Corder.h5";
private static void CreateGroup() throws Exception {
- long file_id = -1;
- long group_id = -1;
- long subgroup_id = -1;
- long gcpl_id = -1;
+ long file_id = HDF5Constants.H5I_INVALID_HID;
+ long group_id = HDF5Constants.H5I_INVALID_HID;
+ long subgroup_id = HDF5Constants.H5I_INVALID_HID;
+ long gcpl_id = HDF5Constants.H5I_INVALID_HID;
int status;
H5G_info_t ginfo;
int i;
diff --git a/java/examples/groups/H5Ex_G_Create.java b/java/examples/groups/H5Ex_G_Create.java
index 0e729d5..9304538 100644
--- a/java/examples/groups/H5Ex_G_Create.java
+++ b/java/examples/groups/H5Ex_G_Create.java
@@ -1,12 +1,11 @@
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* Copyright by The HDF Group. *
- * Copyright by the Board of Trustees of the University of Illinois. *
* All rights reserved. *
* *
* This file is part of HDF5. The full HDF5 copyright notice, including *
* terms governing use, modification, and redistribution, is contained in *
* the COPYING file, which can be found at the root of the source code *
- * distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. *
+ * distribution tree, or in https://www.hdfgroup.org/licenses. *
* If you do not have access to either file, you may request a copy from *
* help@hdfgroup.org. *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
@@ -25,8 +24,8 @@ public class H5Ex_G_Create {
private static String GROUPNAME = "G1";
private static void CreateGroup() {
- long file_id = -1;
- long group_id = -1;
+ long file_id = HDF5Constants.H5I_INVALID_HID;
+ long group_id = HDF5Constants.H5I_INVALID_HID;
// Create a new file using default properties.
try {
diff --git a/java/examples/groups/H5Ex_G_Intermediate.java b/java/examples/groups/H5Ex_G_Intermediate.java
index f7d5a50..ad0290c 100644
--- a/java/examples/groups/H5Ex_G_Intermediate.java
+++ b/java/examples/groups/H5Ex_G_Intermediate.java
@@ -1,12 +1,11 @@
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* Copyright by The HDF Group. *
- * Copyright by the Board of Trustees of the University of Illinois. *
* All rights reserved. *
* *
* This file is part of HDF5. The full HDF5 copyright notice, including *
* terms governing use, modification, and redistribution, is contained in *
* the COPYING file, which can be found at the root of the source code *
- * distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. *
+ * distribution tree, or in https://www.hdfgroup.org/licenses. *
* If you do not have access to either file, you may request a copy from *
* help@hdfgroup.org. *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
@@ -19,8 +18,8 @@ package examples.groups;
import hdf.hdf5lib.H5;
import hdf.hdf5lib.HDF5Constants;
-import hdf.hdf5lib.callbacks.H5O_iterate_cb;
import hdf.hdf5lib.callbacks.H5O_iterate_t;
+import hdf.hdf5lib.callbacks.H5O_iterate_opdata_t;
import hdf.hdf5lib.structs.H5O_info_t;
import java.util.ArrayList;
@@ -31,9 +30,9 @@ public class H5Ex_G_Intermediate {
private void CreateGroup() throws Exception {
- long file_id = -1;
- long group_id = -1;
- long gcpl_id = -1;
+ long file_id = HDF5Constants.H5I_INVALID_HID;
+ long group_id = HDF5Constants.H5I_INVALID_HID;
+ long gcpl_id = HDF5Constants.H5I_INVALID_HID;
try {
// Create a new file_id using the default properties.
@@ -53,9 +52,9 @@ public class H5Ex_G_Intermediate {
// Print all the objects in the file_ids to show that intermediate group_ids have been created.
System.out.println("Objects in the file_id:");
- // H5O_iterate_t iter_data = null;
- H5O_iterate_t iter_data = new H5O_iter_data();
- H5O_iterate_cb iter_cb = new H5O_iter_callback();
+ // H5O_iterate_opdata_t iter_data = null;
+ H5O_iterate_opdata_t iter_data = new H5O_iter_data();
+ H5O_iterate_t iter_cb = new H5O_iter_callback();
H5.H5Ovisit(file_id, HDF5Constants.H5_INDEX_NAME, HDF5Constants.H5_ITER_NATIVE, iter_cb, iter_data);
}
@@ -92,12 +91,12 @@ public class H5Ex_G_Intermediate {
}
}
- private class H5O_iter_data implements H5O_iterate_t {
+ private class H5O_iter_data implements H5O_iterate_opdata_t {
public ArrayList<idata> iterdata = new ArrayList<idata>();
}
- private class H5O_iter_callback implements H5O_iterate_cb {
- public int callback(long group, String name, H5O_info_t info, H5O_iterate_t op_data) {
+ private class H5O_iter_callback implements H5O_iterate_t {
+ public int callback(long group, String name, H5O_info_t info, H5O_iterate_opdata_t op_data) {
idata id = new idata(name, info.type);
((H5O_iter_data) op_data).iterdata.add(id);
diff --git a/java/examples/groups/H5Ex_G_Iterate.java b/java/examples/groups/H5Ex_G_Iterate.java
index 3c9ca82..6caecac 100644
--- a/java/examples/groups/H5Ex_G_Iterate.java
+++ b/java/examples/groups/H5Ex_G_Iterate.java
@@ -1,12 +1,11 @@
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* Copyright by The HDF Group. *
- * Copyright by the Board of Trustees of the University of Illinois. *
* All rights reserved. *
* *
* This file is part of HDF5. The full HDF5 copyright notice, including *
* terms governing use, modification, and redistribution, is contained in *
* the COPYING file, which can be found at the root of the source code *
- * distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. *
+ * distribution tree, or in https://www.hdfgroup.org/licenses. *
* If you do not have access to either file, you may request a copy from *
* help@hdfgroup.org. *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
@@ -19,6 +18,7 @@ package examples.groups;
import hdf.hdf5lib.H5;
import hdf.hdf5lib.HDF5Constants;
+import hdf.hdf5lib.structs.H5O_token_t;
import java.util.EnumSet;
import java.util.HashMap;
@@ -57,7 +57,7 @@ public class H5Ex_G_Iterate {
}
private static void do_iterate() {
- long file_id = -1;
+ long file_id = HDF5Constants.H5I_INVALID_HID;
// Open a file using default properties.
try {
@@ -75,8 +75,8 @@ public class H5Ex_G_Iterate {
String[] oname = new String[count];
int[] otype = new int[count];
int[] ltype = new int[count];
- long[] orefs = new long[count];
- H5.H5Gget_obj_info_all(file_id, DATASETNAME, oname, otype, ltype, orefs, HDF5Constants.H5_INDEX_NAME);
+ H5O_token_t[] otokens = new H5O_token_t[count];
+ H5.H5Gget_obj_info_all(file_id, DATASETNAME, oname, otype, ltype, otokens, HDF5Constants.H5_INDEX_NAME);
// Get type of the object and display its name and type.
for (int indx = 0; indx < otype.length; indx++) {
diff --git a/java/examples/groups/H5Ex_G_Phase.java b/java/examples/groups/H5Ex_G_Phase.java
index bfb775b..67a2f53 100644
--- a/java/examples/groups/H5Ex_G_Phase.java
+++ b/java/examples/groups/H5Ex_G_Phase.java
@@ -1,12 +1,11 @@
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* Copyright by The HDF Group. *
- * Copyright by the Board of Trustees of the University of Illinois. *
* All rights reserved. *
* *
* This file is part of HDF5. The full HDF5 copyright notice, including *
* terms governing use, modification, and redistribution, is contained in *
* the COPYING file, which can be found at the root of the source code *
- * distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. *
+ * distribution tree, or in https://www.hdfgroup.org/licenses. *
* If you do not have access to either file, you may request a copy from *
* help@hdfgroup.org. *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
@@ -60,11 +59,11 @@ public class H5Ex_G_Phase {
}
private static void CreateGroup() {
- long file_id = -1;
- long group_id = -1;
- long subgroup_id = -1;
- long fapl_id = -1;
- long gcpl_id = -1;
+ long file_id = HDF5Constants.H5I_INVALID_HID;
+ long group_id = HDF5Constants.H5I_INVALID_HID;
+ long subgroup_id = HDF5Constants.H5I_INVALID_HID;
+ long fapl_id = HDF5Constants.H5I_INVALID_HID;
+ long gcpl_id = HDF5Constants.H5I_INVALID_HID;
H5G_info_t ginfo;
String name = "G0"; // Name of subgroup_id
int i;
diff --git a/java/examples/groups/H5Ex_G_Traverse.java b/java/examples/groups/H5Ex_G_Traverse.java
index 2a2cba3..c5b6373 100644
--- a/java/examples/groups/H5Ex_G_Traverse.java
+++ b/java/examples/groups/H5Ex_G_Traverse.java
@@ -1,12 +1,11 @@
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* Copyright by The HDF Group. *
- * Copyright by the Board of Trustees of the University of Illinois. *
* All rights reserved. *
* *
* This file is part of HDF5. The full HDF5 copyright notice, including *
* terms governing use, modification, and redistribution, is contained in *
* the COPYING file, which can be found at the root of the source code *
- * distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. *
+ * distribution tree, or in https://www.hdfgroup.org/licenses. *
* If you do not have access to either file, you may request a copy from *
* help@hdfgroup.org. *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
@@ -25,25 +24,25 @@ package examples.groups;
import hdf.hdf5lib.H5;
import hdf.hdf5lib.HDF5Constants;
-import hdf.hdf5lib.callbacks.H5L_iterate_cb;
import hdf.hdf5lib.callbacks.H5L_iterate_t;
+import hdf.hdf5lib.callbacks.H5L_iterate_opdata_t;
import hdf.hdf5lib.structs.H5L_info_t;
import hdf.hdf5lib.structs.H5O_info_t;
import examples.groups.H5Ex_G_Iterate.H5O_type;
-class opdata implements H5L_iterate_t {
+class opdata implements H5L_iterate_opdata_t {
int recurs;
opdata prev;
- long addr;
+ H5O_token_t obj_token;
}
public class H5Ex_G_Traverse {
private static String FILE = "h5ex_g_traverse.h5";
- public static H5L_iterate_cb iter_cb = new H5L_iter_callbackT();
+ public static H5L_iterate_t iter_cb = new H5L_iter_callbackT();
private static void OpenGroup() {
- long file_id = -1;
+ long file_id = HDF5Constants.H5I_INVALID_HID;
H5O_info_t infobuf;
opdata od = new opdata();
@@ -54,7 +53,7 @@ public class H5Ex_G_Traverse {
infobuf = H5.H5Oget_info(file_id);
od.recurs = 0;
od.prev = null;
- od.addr = infobuf.addr;
+ od.obj_token = infobuf.token;
}
}
catch (Exception e) {
@@ -64,7 +63,7 @@ public class H5Ex_G_Traverse {
// Print the root group and formatting, begin iteration.
try {
System.out.println("/ {");
- // H5L_iterate_cb iter_cb = new H5L_iter_callbackT();
+ // H5L_iterate_t iter_cb = new H5L_iter_callbackT();
H5.H5Literate(file_id, HDF5Constants.H5_INDEX_NAME, HDF5Constants.H5_ITER_NATIVE, 0L, iter_cb, od);
System.out.println("}");
}
@@ -87,8 +86,8 @@ public class H5Ex_G_Traverse {
}
}
-class H5L_iter_callbackT implements H5L_iterate_cb {
- public int callback(long group, String name, H5L_info_t info, H5L_iterate_t op_data) {
+class H5L_iter_callbackT implements H5L_iterate_t {
+ public int callback(long group, String name, H5L_info_t info, H5L_iterate_opdata_t op_data) {
H5O_info_t infobuf;
int return_val = 0;
@@ -105,7 +104,7 @@ class H5L_iter_callbackT implements H5L_iterate_cb {
switch (H5O_type.get(infobuf.type)) {
case H5O_TYPE_GROUP:
System.out.println("Group: " + name + " { ");
- // Check group address against linked list of operator
+ // Check group object token against linked list of operator
// data structures. We will always run the check, as the
// reference count cannot be relied upon if there are
// symbolic links, and H5Oget_info_by_name always follows
@@ -114,7 +113,7 @@ class H5L_iter_callbackT implements H5L_iterate_cb {
// links, however it could still fail if an object's
// reference count was manually manipulated with
// H5Odecr_refcount.
- if (group_check(od, infobuf.addr)) {
+ if (group_check(od, infobuf.token)) {
for (int i = 0; i < spaces; i++)
System.out.print(" ");
System.out.println(" Warning: Loop detected!");
@@ -127,8 +126,8 @@ class H5L_iter_callbackT implements H5L_iterate_cb {
opdata nextod = new opdata();
nextod.recurs = od.recurs + 1;
nextod.prev = od;
- nextod.addr = infobuf.addr;
- H5L_iterate_cb iter_cb2 = new H5L_iter_callbackT();
+ nextod.obj_token = infobuf.token;
+ H5L_iterate_t iter_cb2 = new H5L_iter_callbackT();
return_val = H5.H5Literate_by_name(group, name, HDF5Constants.H5_INDEX_NAME,
HDF5Constants.H5_ITER_NATIVE, 0L, iter_cb2, nextod, HDF5Constants.H5P_DEFAULT);
}
@@ -153,13 +152,13 @@ class H5L_iter_callbackT implements H5L_iterate_cb {
return return_val;
}
- public boolean group_check(opdata od, long target_addr) {
- if (od.addr == target_addr)
- return true; // Addresses match
+ public boolean group_check(opdata od, H5O_token_t target_token) {
+ if (od.obj_token.equals(target_token))
+ return true; // Object tokens match
else if (od.recurs == 0)
return false; // Root group reached with no matches
else
- return group_check(od.prev, target_addr); // Recursively examine the next node
+ return group_check(od.prev, target_token); // Recursively examine the next node
}
}
diff --git a/java/examples/groups/H5Ex_G_Visit.java b/java/examples/groups/H5Ex_G_Visit.java
index f91c707..790be80 100644
--- a/java/examples/groups/H5Ex_G_Visit.java
+++ b/java/examples/groups/H5Ex_G_Visit.java
@@ -1,12 +1,11 @@
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* Copyright by The HDF Group. *
- * Copyright by the Board of Trustees of the University of Illinois. *
* All rights reserved. *
* *
* This file is part of HDF5. The full HDF5 copyright notice, including *
* terms governing use, modification, and redistribution, is contained in *
* the COPYING file, which can be found at the root of the source code *
- * distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. *
+ * distribution tree, or in https://www.hdfgroup.org/licenses. *
* If you do not have access to either file, you may request a copy from *
* help@hdfgroup.org. *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
@@ -23,10 +22,10 @@ package examples.groups;
import hdf.hdf5lib.H5;
import hdf.hdf5lib.HDF5Constants;
-import hdf.hdf5lib.callbacks.H5L_iterate_cb;
import hdf.hdf5lib.callbacks.H5L_iterate_t;
-import hdf.hdf5lib.callbacks.H5O_iterate_cb;
+import hdf.hdf5lib.callbacks.H5L_iterate_opdata_t;
import hdf.hdf5lib.callbacks.H5O_iterate_t;
+import hdf.hdf5lib.callbacks.H5O_iterate_opdata_t;
import hdf.hdf5lib.structs.H5L_info_t;
import hdf.hdf5lib.structs.H5O_info_t;
@@ -47,7 +46,7 @@ public class H5Ex_G_Visit {
private void VisitGroup() throws Exception {
- long file_id = -1;
+ long file_id = HDF5Constants.H5I_INVALID_HID;
try {
// Open file
@@ -55,13 +54,13 @@ public class H5Ex_G_Visit {
// Begin iteration using H5Ovisit
System.out.println("Objects in the file:");
- H5O_iterate_t iter_data = new H5O_iter_data();
- H5O_iterate_cb iter_cb = new H5O_iter_callback();
+ H5O_iterate_opdata_t iter_data = new H5O_iter_data();
+ H5O_iterate_t iter_cb = new H5O_iter_callback();
H5.H5Ovisit(file_id, HDF5Constants.H5_INDEX_NAME, HDF5Constants.H5_ITER_NATIVE, iter_cb, iter_data);
System.out.println();
// Repeat the same process using H5Lvisit
- H5L_iterate_t iter_data2 = new H5L_iter_data();
- H5L_iterate_cb iter_cb2 = new H5L_iter_callback();
+ H5L_iterate_opdata_t iter_data2 = new H5L_iter_data();
+ H5L_iterate_t iter_cb2 = new H5L_iter_callback();
System.out.println("Links in the file:");
H5.H5Lvisit(file_id, HDF5Constants.H5_INDEX_NAME, HDF5Constants.H5_ITER_NATIVE, iter_cb2, iter_data2);
@@ -91,12 +90,12 @@ public class H5Ex_G_Visit {
}
}
- private class H5L_iter_data implements H5L_iterate_t {
+ private class H5L_iter_data implements H5L_iterate_opdata_t {
public ArrayList<idata> iterdata = new ArrayList<idata>();
}
- private class H5L_iter_callback implements H5L_iterate_cb {
- public int callback(long group, String name, H5L_info_t info, H5L_iterate_t op_data) {
+ private class H5L_iter_callback implements H5L_iterate_t {
+ public int callback(long group, String name, H5L_info_t info, H5L_iterate_opdata_t op_data) {
idata id = new idata(name, info.type);
((H5L_iter_data) op_data).iterdata.add(id);
@@ -107,8 +106,8 @@ public class H5Ex_G_Visit {
// Get type of the object and display its name and type. The name of the object is passed to this
// function by the Library.
infobuf = H5.H5Oget_info_by_name(group, name, HDF5Constants.H5P_DEFAULT);
- H5O_iterate_cb iter_cbO = new H5O_iter_callback();
- H5O_iterate_t iter_dataO = new H5O_iter_data();
+ H5O_iterate_t iter_cbO = new H5O_iter_callback();
+ H5O_iterate_opdata_t iter_dataO = new H5O_iter_data();
ret = iter_cbO.callback(group, name, infobuf, iter_dataO);
}
catch (Exception e) {
@@ -119,12 +118,12 @@ public class H5Ex_G_Visit {
}
}
- private class H5O_iter_data implements H5O_iterate_t {
+ private class H5O_iter_data implements H5O_iterate_opdata_t {
public ArrayList<idata> iterdata = new ArrayList<idata>();
}
- private class H5O_iter_callback implements H5O_iterate_cb {
- public int callback(long group, String name, H5O_info_t info, H5O_iterate_t op_data) {
+ private class H5O_iter_callback implements H5O_iterate_t {
+ public int callback(long group, String name, H5O_info_t info, H5O_iterate_opdata_t op_data) {
idata id = new idata(name, info.type);
((H5O_iter_data) op_data).iterdata.add(id);
diff --git a/java/examples/groups/JavaGroupExample.sh.in b/java/examples/groups/JavaGroupExample.sh.in
index acc606f..86f90bf 100644
--- a/java/examples/groups/JavaGroupExample.sh.in
+++ b/java/examples/groups/JavaGroupExample.sh.in
@@ -1,13 +1,12 @@
#! /bin/sh
#
# Copyright by The HDF Group.
-# Copyright by the Board of Trustees of the University of Illinois.
# All rights reserved.
#
# This file is part of HDF5. The full HDF5 copyright notice, including
# terms governing use, modification, and redistribution, is contained in
# the COPYING file, which can be found at the root of the source code
-# distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases.
+# distribution tree, or in https://www.hdfgroup.org/licenses.
# If you do not have access to either file, you may request a copy from
# help@hdfgroup.org.
#
@@ -15,6 +14,7 @@
top_builddir=@top_builddir@
top_srcdir=@top_srcdir@
srcdir=@srcdir@
+IS_DARWIN="@H5_IS_DARWIN@"
TESTNAME=EX_Groups
EXIT_SUCCESS=0
@@ -33,9 +33,9 @@ nerrors=0
# where the libs exist
HDFLIB_HOME="$top_srcdir/java/lib"
-BLDLIBDIR="$top_builddir/hdf5/lib"
-BLDITERDIR="./groups"
BLDDIR="."
+BLDLIBDIR="$BLDDIR/testlibs"
+BLDITERDIR="./groups"
HDFTEST_HOME="$top_srcdir/java/examples/groups"
JARFILE=jar@PACKAGE_TARNAME@-@PACKAGE_VERSION@.jar
TESTJARFILE=jar@PACKAGE_TARNAME@groups.jar
@@ -56,8 +56,8 @@ $top_builddir/java/src/jni/.libs/libhdf5_java.*
$top_builddir/java/src/$JARFILE
"
LIST_JAR_TESTFILES="
-$HDFLIB_HOME/slf4j-api-1.7.25.jar
-$HDFLIB_HOME/ext/slf4j-simple-1.7.25.jar
+$HDFLIB_HOME/slf4j-api-1.7.33.jar
+$HDFLIB_HOME/ext/slf4j-simple-1.7.33.jar
"
LIST_ITER_FILES="
$HDFTEST_HOME/h5ex_g_iterate.h5
@@ -105,6 +105,13 @@ COPY_LIBFILES_TO_BLDLIBDIR()
fi
fi
done
+ if [ "$IS_DARWIN" = "yes" ]; then
+ (cd $BLDLIBDIR; \
+ install_name_tool -add_rpath @loader_path libhdf5_java.dylib; \
+ exist_path=` otool -l libhdf5_java.dylib | grep libhdf5 | grep -v java | awk '{print $2}'`; \
+ echo $exist_path; \
+ install_name_tool -change $exist_path @rpath/libhdf5.dylib libhdf5_java.dylib)
+ fi
# copy jar files. Used -f to make sure get a new copy
for tstfile in $COPY_JARTESTFILES
do
@@ -248,7 +255,7 @@ COPY_LIBFILES_TO_BLDLIBDIR
COPY_DATAFILES_TO_BLDDIR
COPY_ITERFILES_TO_BLDITERDIR
-CPATH=".:"$BLDLIBDIR"/"$JARFILE":"$BLDLIBDIR"/slf4j-api-1.7.25.jar:"$BLDLIBDIR"/slf4j-simple-1.7.25.jar:"$TESTJARFILE""
+CPATH=".:"$BLDLIBDIR"/"$JARFILE":"$BLDLIBDIR"/slf4j-api-1.7.33.jar:"$BLDLIBDIR"/slf4j-simple-1.7.33.jar:"$TESTJARFILE""
TEST=/usr/bin/test
if [ ! -x /usr/bin/test ]
diff --git a/java/examples/groups/Makefile.am b/java/examples/groups/Makefile.am
index 09df743..c520860 100644
--- a/java/examples/groups/Makefile.am
+++ b/java/examples/groups/Makefile.am
@@ -1,12 +1,11 @@
#
# Copyright by The HDF Group.
-# Copyright by the Board of Trustees of the University of Illinois.
# All rights reserved.
#
# This file is part of HDF5. The full HDF5 copyright notice, including
# terms governing use, modification, and redistribution, is contained in
# the COPYING file, which can be found at the root of the source code
-# distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases.
+# distribution tree, or in https://www.hdfgroup.org/licenses.
# If you do not have access to either file, you may request a copy from
# help@hdfgroup.org.
##
@@ -28,13 +27,13 @@ classes:
pkgpath = examples/groups
hdfjarfile = jar$(PACKAGE_TARNAME)-$(PACKAGE_VERSION).jar
-CLASSPATH_ENV=CLASSPATH=.:$(JAVAROOT):$(top_builddir)/java/src/$(hdfjarfile):$(top_srcdir)/java/lib/slf4j-api-1.7.25.jar:$(top_srcdir)/java/lib/ext/slf4j-simple-1.7.25.jar:$$CLASSPATH
+CLASSPATH_ENV=CLASSPATH=.:$(JAVAROOT):$(top_builddir)/java/src/$(hdfjarfile):$(top_srcdir)/java/lib/slf4j-api-1.7.33.jar:$(top_srcdir)/java/lib/ext/slf4j-simple-1.7.33.jar:$$CLASSPATH
jarfile = jar$(PACKAGE_TARNAME)groups.jar
AM_JAVACFLAGS = $(H5_JAVACFLAGS) -deprecation
-TESTPACKAGE =
+TESTPACKAGE =
noinst_JAVA = \
H5Ex_G_Create.java \