SharedStorageConnector extends AbstractStorageConnector { @Override public List<String> getContexts() { ensureOpen(); final Iterator<String> it = Txn.calculateRead(storage.getDataset(), () -> storage.getDataset().listNames()); final List<String> contexts = new ArrayList<>(); it.forEachRemaining(contexts::add); return contexts; } SharedStorageConnector(DriverConfiguration configuration); @Override synchronized void begin(); @Override synchronized void commit(); @Override void rollback(); @Override Collection<Statement> find(Resource subject, Property property, RDFNode value, String context); @Override boolean contains(Resource subject, Property property, RDFNode value, String context); @Override List<String> getContexts(); @Override void add(List<Statement> statements, String context); @Override void remove(List<Statement> statements, String context); @Override void remove(Resource subject, Property property, RDFNode object, String context); @Override AbstractResultSet executeSelectQuery(Query query, StatementOntology target); @Override AbstractResultSet executeAskQuery(Query query, StatementOntology target); @Override void executeUpdate(String query, StatementOntology target); @Override synchronized void close(); synchronized void reloadStorage(); synchronized void setDataset(Dataset dataset);  }
@Test public void getContextReturnsEmptyListWhenNoNamedGraphsArePresent() { final SharedStorageConnector connector = initConnector(); final List<String> contexts = connector.getContexts(); assertNotNull(contexts); assertTrue(contexts.isEmpty()); }