Skip to content

Commit d3ef682

Browse files
finalize PR
1 parent a190d65 commit d3ef682

File tree

7 files changed

+46
-63
lines changed

7 files changed

+46
-63
lines changed

CMakeLists.txt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -40,8 +40,8 @@ endif()
4040
# Default builds the superbuild.
4141
option(TILEDB_JNI_SUPERBUILD "If true, perform a superbuild (builds all missing dependencies)." ON)
4242

43-
# Set C++11 as required standard for all C++ targets.
44-
set(CMAKE_CXX_STANDARD 11)
43+
# Set C++20 as required standard for all C++ targets.
44+
set(CMAKE_CXX_STANDARD 20)
4545
set(CMAKE_CXX_STANDARD_REQUIRED ON)
4646
set(CMAKE_CXX_EXTENSIONS OFF) # Don't use GNU extensions
4747

generate_tiledb_jni

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -95,15 +95,15 @@ if [[ ! -x `which swig` ]]; then
9595
die "swig wrapper generator not found in path"
9696
fi
9797

98-
## define the necessary macro constants
99-
## (removed during preprocessor macro expansion)
100-
#g++ -dM -I ${prefix_dir}/include -x c++-header -E ${tiledb_header} ${tiledb_experimental_header} | grep "#define TILEDB" > swig/tiledb_generated.h ||
101-
# die "could not write ./swig/tiledb_generated.h tmp file"
102-
#
103-
### remove system headers
104-
#awk '!/#\s*include/ || /tiledb_/ || /tiledb\/api/ {print}' ${tiledb_header} ${tiledb_experimental_header} |
105-
# g++ -E -P -nostdinc++ -I "${prefix_dir}/include/tiledb" -I "${prefix_dir}/include/" -x c++ - >> swig/tiledb_generated.h ||
106-
# die "error generating temp combined swig/tiledb_generated.h header for swig generation"
98+
# define the necessary macro constants
99+
# (removed during preprocessor macro expansion)
100+
g++ -dM -I ${prefix_dir}/include -x c++-header -E ${tiledb_header} ${tiledb_experimental_header} | grep "#define TILEDB" > swig/tiledb_generated.h ||
101+
die "could not write ./swig/tiledb_generated.h tmp file"
102+
103+
## remove system headers
104+
awk '!/#\s*include/ || /tiledb_/ || /tiledb\/api/ {print}' ${tiledb_header} ${tiledb_experimental_header} |
105+
g++ -E -P -nostdinc++ -I "${prefix_dir}/include/tiledb" -I "${prefix_dir}/include/" -x c++ - >> swig/tiledb_generated.h ||
106+
die "error generating temp combined swig/tiledb_generated.h header for swig generation"
107107

108108
# if existing libtiledb generated source exists, delete it
109109
cleanup_java() {

src/main/java/examples/io/tiledb/java/api/ArrayDenseCreate.java

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -33,29 +33,19 @@
3333
public class ArrayDenseCreate {
3434
public static void main(String[] args) throws Exception {
3535

36-
Version version = new Version();
37-
System.out.println(version);
3836
// Create TileDB context
39-
System.out.println("context before");
40-
4137
Context ctx = new Context();
42-
System.out.println("context done");
4338
// Create getDimensions
4439
Dimension<Long> d1 =
4540
new Dimension<Long>(ctx, "d1", Long.class, new Pair<Long, Long>(1l, 4l), 2l);
4641
Dimension<Long> d2 =
4742
new Dimension<Long>(ctx, "d2", Long.class, new Pair<Long, Long>(1l, 4l), 2l);
4843

49-
System.out.println("dim done");
50-
5144
// Create getDomain
5245
Domain domain = new Domain(ctx);
53-
System.out.println("domain done");
5446
domain.addDimension(d1);
5547
domain.addDimension(d2);
5648

57-
System.out.println("added dims");
58-
5949
// Create and add getAttributes
6050
Attribute a1 = new Attribute(ctx, "a1", Integer.class);
6151
Attribute a2 = new Attribute(ctx, "a2", String.class);

src/main/java/io/tiledb/java/api/Group.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -275,11 +275,11 @@ public void addMember(String uri, boolean relative, String name) throws TileDBEr
275275
/**
276276
* Remove a member from a group.
277277
*
278-
* @param name The name of the member to remove
278+
* @param nameOrUri The name or URI of the member to remove
279279
* @throws TileDBError
280280
*/
281-
public void removeMember(String name) throws TileDBError {
282-
ctx.handleError(tiledb.tiledb_group_remove_member(ctx.getCtxp(), getGroupp(), name));
281+
public void removeMember(String nameOrUri) throws TileDBError {
282+
ctx.handleError(tiledb.tiledb_group_remove_member(ctx.getCtxp(), getGroupp(), nameOrUri));
283283
}
284284

285285
/**

src/main/java/io/tiledb/libtiledb/NativeLibLoader.java

Lines changed: 0 additions & 7 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/test/java/io/tiledb/java/api/GroupTest.java

Lines changed: 29 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -108,35 +108,35 @@ public void arrayWrite(String arrayURI) throws Exception {
108108
}
109109
}
110110

111-
// @Test
112-
// public void membersTest() throws Exception {
113-
// arrayCreate("array1");
114-
// arrayWrite("array1");
115-
//
116-
// arrayCreate("array2");
117-
// arrayWrite("array2");
118-
//
119-
// arrayCreate("array3");
120-
// arrayWrite("array3");
121-
//
122-
// Group.create(ctx, "test_group");
123-
// Group group = new Group(ctx, "test_group", TILEDB_WRITE);
124-
// group.addMember("array1", false, "array1Name");
125-
// group.addMember("array2", false, "array2Name");
126-
// group.addMember("array3", false, "array3Name");
127-
//
128-
// // reopen group
129-
// group.reopen(ctx, QueryType.TILEDB_READ);
130-
// Assert.assertEquals(3, group.getMemberCount());
131-
//
132-
// // remove a member
133-
// group.reopen(ctx, TILEDB_WRITE);
134-
// group.removeMember("array2Name");
135-
//
136-
// // check if member is removed
137-
// group.reopen(ctx, QueryType.TILEDB_READ);
138-
// Assert.assertEquals(2, group.getMemberCount());
139-
// }
111+
@Test
112+
public void membersTest() throws Exception {
113+
arrayCreate("array1");
114+
arrayWrite("array1");
115+
116+
arrayCreate("array2");
117+
arrayWrite("array2");
118+
119+
arrayCreate("array3");
120+
arrayWrite("array3");
121+
122+
Group.create(ctx, "test_group");
123+
Group group = new Group(ctx, "test_group", TILEDB_WRITE);
124+
group.addMember("array1", false, "array1Name");
125+
group.addMember("array2", false, "array2Name");
126+
group.addMember("array3", false, "array3Name");
127+
128+
// reopen group
129+
group.reopen(ctx, QueryType.TILEDB_READ);
130+
Assert.assertEquals(3, group.getMemberCount());
131+
132+
// remove a member
133+
group.reopen(ctx, TILEDB_WRITE);
134+
group.removeMember("array2");
135+
136+
// check if member is removed
137+
group.reopen(ctx, QueryType.TILEDB_READ);
138+
Assert.assertEquals(2, group.getMemberCount());
139+
}
140140

141141
@Test
142142
public void metadataTest() throws TileDBError {

swig/customCode/NativeLibLoader.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -99,6 +99,7 @@ static void loadNativeTileDBJNI() {
9999
try {
100100
loadNativeLib("tiledbjni", true);
101101
} catch (java.lang.UnsatisfiedLinkError e) {
102+
LOGGER.warning("Could not load Native TileDB JNI");
102103
// If a native library fails to link, we fall back to depending on the system
103104
// dynamic linker to satisfy the requirement. Therefore, we do nothing here
104105
// (if the library is not available via the system linker, a runtime error
@@ -323,13 +324,12 @@ private static Path findNativeLibrary(String libraryName, boolean mapLibraryName
323324
String mappedLibraryName = mapLibraryName ? System.mapLibraryName(libraryName) : libraryName;
324325
String libDir = LIB_RESOURCE_DIR;
325326

326-
if (System.getProperty("os.name").contains("mac")
327+
if (System.getProperty("os.name").contains("Mac")
327328
&& System.getProperty("os.arch").equals("aarch64")) {
328-
libDir = "arm" + libDir;
329+
libDir = "/arm" + libDir;
329330
}
330331

331332
String libPath = libDir + "/" + mappedLibraryName;
332-
333333
boolean hasNativeLib = hasResource(libPath);
334334
if (!hasNativeLib) {
335335
return null;

0 commit comments

Comments
 (0)