package org.vertexium.accumulo; import org.apache.accumulo.core.client.Connector; import org.apache.accumulo.core.client.admin.NewTableConfiguration; import org.apache.accumulo.core.client.admin.TimeType; import org.vertexium.VertexiumException; public class AccumuloGraphTestUtils { public static void ensureTableExists(Connector connector, String tableName) { if (!connector.tableOperations().exists(tableName)) { createTable(connector, tableName); } } public static void dropGraph(Connector connector, String tableName) { try { if (connector.tableOperations().exists(tableName)) { connector.tableOperations().delete(tableName); } } catch (Exception e) { throw new VertexiumException("Unable to drop graph: " + tableName, e); } createTable(connector, tableName); } private static void createTable(Connector connector, String tableName) { try { NewTableConfiguration config = new NewTableConfiguration() .withoutDefaultIterators() .setTimeType(TimeType.MILLIS); connector.tableOperations().create(tableName, config); } catch (Exception e) { throw new VertexiumException("Unable to create table " + tableName); } } }