@SuppressWarnings("unchecked") @Override public <D, Q> Q createUpdate(UpdateLanguage<D, Q> updateLanguage, D definition) { if (updateLanguage == UpdateLanguage.SPARQL_UPDATE) { return (Q) new SPARQLUpdateClause(this, definition.toString()); } else { throw new UnsupportedOperationException(updateLanguage.toString()); } }
@Override public void execute() { switch (clause.getType()) { case CLEAR: case DROP: connection.remove(null, null, null, clause.getSource()); case CREATE: case LOAD: // TODO break; case DELETE: executeDelete(); break; case INSERT: executeInsert(); break; case MODIFY: executeModify(); break; default: throw new IllegalStateException("Unknown clause " + clause.getType()); } }
private long executeInsert() { List<STMT> stmts = getTriples(clause.getTemplate(), clause.getPattern()); connection.update(null, stmts); return 0l; }
private long executeDelete() { List<STMT> stmts = getTriples(clause.getTemplate(), clause.getPattern()); connection.update(stmts, null); return 0l; }
@SuppressWarnings("unchecked") @Override public <D, Q> Q createUpdate(UpdateLanguage<D, Q> updateLanguage, D definition) { if (updateLanguage == UpdateLanguage.SPARQL_UPDATE) { return (Q) new SPARQLUpdateClause(this, definition.toString()); } else { throw new UnsupportedOperationException(updateLanguage.toString()); } }
private long executeModify() { List<STMT> added = null, removed = null; if (clause.getInsert() != null) { added = getTriples(clause.getInsert(), clause.getPattern()); } if (clause.getDelete() != null) { removed = getTriples(clause.getDelete(), clause.getPattern()); } connection.update(removed, added); return 0l; }
@SuppressWarnings("unchecked") @Override public <D, Q> Q createUpdate(UpdateLanguage<D, Q> updateLanguage, D definition) { if (updateLanguage == UpdateLanguage.SPARQL_UPDATE){ return (Q)new SPARQLUpdateClause(this, definition.toString()); }else{ throw new UnsupportedOperationException(updateLanguage.toString()); } }