From 145aefb29de8ef84c067e94a40589821b54e3c29 Mon Sep 17 00:00:00 2001 From: dimitrisstaratzis Date: Wed, 28 Jun 2023 16:04:20 +0300 Subject: [PATCH] ArraySchema.toString() checks if domain is set --- src/main/java/io/tiledb/java/api/ArraySchema.java | 4 +++- src/test/java/io/tiledb/java/api/ArraySchemaTest.java | 1 + 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/src/main/java/io/tiledb/java/api/ArraySchema.java b/src/main/java/io/tiledb/java/api/ArraySchema.java index 9adaf0df..ed23737d 100644 --- a/src/main/java/io/tiledb/java/api/ArraySchema.java +++ b/src/main/java/io/tiledb/java/api/ArraySchema.java @@ -76,6 +76,7 @@ public class ArraySchema implements AutoCloseable { private Context ctx; private ArrayType arrayType; + private boolean domainIsSet = false; private HashMap attributes; private SWIGTYPE_p_tiledb_array_schema_t schemap; @@ -331,6 +332,7 @@ public Domain getDomain() throws TileDBError { public void setDomain(Domain domain) throws TileDBError { ctx.handleError( tiledb.tiledb_array_schema_set_domain(ctx.getCtxp(), getSchemap(), domain.getDomainp())); + domainIsSet = true; } /** @@ -771,7 +773,7 @@ public String toString() { StringBuilder s = new StringBuilder("ArraySchema<"); s.append(getArrayType().name()); s.append(" "); - s.append(getDomain()); + if (domainIsSet) s.append(getDomain()); for (Map.Entry e : getAttributes().entrySet()) { s.append(" "); s.append(e.getValue()); diff --git a/src/test/java/io/tiledb/java/api/ArraySchemaTest.java b/src/test/java/io/tiledb/java/api/ArraySchemaTest.java index 4b204b83..23d4dcfb 100644 --- a/src/test/java/io/tiledb/java/api/ArraySchemaTest.java +++ b/src/test/java/io/tiledb/java/api/ArraySchemaTest.java @@ -41,6 +41,7 @@ public ArraySchema schemaCreate(Context ctx, ArrayType arrayType, Layout cellOrd ArraySchema schema = new ArraySchema(ctx, arrayType); schema.setTileOrder(Layout.TILEDB_ROW_MAJOR); schema.setCellOrder(cellOrder); + Assert.assertNotNull(schema.toString()); schema.setDomain(domain); schema.addAttribute(a1); return schema;