SharedStorageConnector extends AbstractStorageConnector { @Override public void executeUpdate(String query, StatementOntology target) throws JenaDriverException { ensureOpen(); try { UpdateAction.parseExecute(query, storage.getDataset()); } catch (RuntimeException e) { throw queryFailed(query, e); } } 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 executeUpdateThrowsJenaDriverExceptionWhenQueryFails() throws Exception { final SharedStorageConnector connector = initConnector(); generateTestData(connector.storage.getDataset()); final String newType = Generator.generateUri().toString(); final String update = "INSERT DATA {" + SUBJECT + "> a <" + newType + "> . }"; thrown.expect(JenaDriverException.class); thrown.expectMessage(containsString("Execution of query " + update + " failed")); connector.executeUpdate(update, StatementOntology.CENTRAL); }