@Test public void deleteAll() throws Exception { List<Long> ids = Arrays.asList(new Long[] { 123L, 234L, 345L }); cypherQuery = new NodeDeleteStatements().delete(ids); assertThat(cypherQuery.getStatement()) .isEqualTo("MATCH (n) WHERE ID(n) in { ids } OPTIONAL MATCH (n)-[r0]-() DELETE r0, n"); assertThat(mapper.writeValueAsString(cypherQuery.getParameters())).isEqualTo("{\"ids\":[123,234,345]}"); }
@Test public void purge() throws Exception { cypherQuery = new NodeDeleteStatements().deleteAll(); assertThat(cypherQuery.getStatement()).isEqualTo("MATCH (n) OPTIONAL MATCH (n)-[r0]-() DELETE r0, n"); assertThat(mapper.writeValueAsString(cypherQuery.getParameters())).isEqualTo("{}"); }
public <T> Object delete(Class<T> clazz, Iterable<Filter> filters, boolean listResults) { ClassInfo classInfo = session.metaData().classInfo(clazz.getSimpleName()); if (classInfo != null) { resolvePropertyAnnotations(clazz, filters); CypherQuery query; if (classInfo.isRelationshipEntity()) { query = new RelationshipDeleteStatements().deleteAndList(classInfo.neo4jName(), filters); } else { query = new NodeDeleteStatements().deleteAndList(classInfo.neo4jName(), filters); } if (listResults) { return list(query, classInfo.isRelationshipEntity()); } return count(query, classInfo.isRelationshipEntity()); } throw new RuntimeException(clazz.getName() + " is not a persistable class"); }
private DeleteStatements getDeleteStatementsBasedOnType(Class type) { if (session.metaData().isRelationshipEntity(type.getName())) { return new RelationshipDeleteStatements(); } return new NodeDeleteStatements(); }
public void purgeDatabase() { Statement stmt = new NodeDeleteStatements().deleteAll(); RowModelRequest query = new DefaultRowModelRequest(stmt.getStatement(), stmt.getParameters()); session.doInTransaction(() -> { session.requestHandler().execute(query).close(); }, Transaction.Type.READ_WRITE); session.context().clear(); }
@Test public void deleteAllByLabel() throws Exception { cypherQuery = new NodeDeleteStatements().delete("NODE"); assertThat(cypherQuery.getStatement()).isEqualTo("MATCH (n:`NODE`) OPTIONAL MATCH (n)-[r0]-() DELETE r0, n"); assertThat(mapper.writeValueAsString(cypherQuery.getParameters())).isEqualTo("{}"); }
@Test public void delete() throws Exception { cypherQuery = new NodeDeleteStatements().delete(123L); assertThat(cypherQuery.getStatement()) .isEqualTo("MATCH (n) WHERE ID(n) = { id } OPTIONAL MATCH (n)-[r0]-() DELETE r0, n"); assertThat(mapper.writeValueAsString(cypherQuery.getParameters())).isEqualTo("{\"id\":123}"); }