private void insertObjectsInTransaction(final Neo4jTemplate neo4jTemplate, final List<Object> readValues) { TransactionTemplate transactionalTemplate = transactionalTemplate(neo4jTemplate.getGraphDatabaseService()); transactionalTemplate.execute(new TransactionCallback<Void>() { @Override public Void doInTransaction(TransactionStatus status) { for (Object object : readValues) { neo4jTemplate.save(object); } return null; } }); }
private void insertObjectsInTransaction(final Neo4jTemplate neo4jTemplate, final List<Object> readValues) { TransactionTemplate transactionalTemplate = transactionalTemplate(neo4jTemplate.getGraphDatabaseService()); transactionalTemplate.execute(new TransactionCallback<Void>() { @Override public Void doInTransaction(TransactionStatus status) { for (Object object : readValues) { neo4jTemplate.save(object); } return null; } }); }
private List<Object> findAndFetchAllEntitiesByClass(final Neo4jTemplate neo4jTemplate, final Class<?> entityClass) { TransactionTemplate transactionalTemplate = transactionalTemplate(neo4jTemplate.getGraphDatabaseService()); return transactionalTemplate.execute(new TransactionCallback<List<Object>>() { @Override public List<Object> doInTransaction(TransactionStatus status) { Result<?> allEntities = neo4jTemplate.findAll(entityClass); final List<Object> fetchedData = fetchData(neo4jTemplate, allEntities); return fetchedData; } private List<Object> fetchData(final Neo4jTemplate neo4jTemplate, Result<?> allEntities) { final List<Object> fetchedData = new ArrayList<Object>(); Iterator<?> iterator = allEntities.iterator(); while (iterator.hasNext()) { Object entity = iterator.next(); fetchedData.add(neo4jTemplate.fetch(entity)); } return fetchedData; } }); }
private List<Object> findAndFetchAllEntitiesByClass(final Neo4jTemplate neo4jTemplate, final Class<?> entityClass) { TransactionTemplate transactionalTemplate = transactionalTemplate(neo4jTemplate.getGraphDatabaseService()); return transactionalTemplate.execute(new TransactionCallback<List<Object>>() { @Override public List<Object> doInTransaction(TransactionStatus status) { Result<?> allEntities = neo4jTemplate.findAll(entityClass); final List<Object> fetchedData = fetchData(neo4jTemplate, allEntities); return fetchedData; } private List<Object> fetchData(final Neo4jTemplate neo4jTemplate, Result<?> allEntities) { final List<Object> fetchedData = new ArrayList<Object>(); Iterator<?> iterator = allEntities.iterator(); while (iterator.hasNext()) { Object entity = iterator.next(); fetchedData.add(neo4jTemplate.fetch(entity)); } return fetchedData; } }); }
@PostConstruct public void initializeIndexes() { GraphDatabaseService databaseService = template.getGraphDatabaseService(); try (Transaction tx = databaseService.beginTx()) { Schema schema = databaseService.schema(); Label uniquePersonLabel = DynamicLabel.label("_" + PersonNode.TYPE); for (ConstraintDefinition definition : schema.getConstraints(uniquePersonLabel)) { if (definition.isConstraintType(ConstraintType.UNIQUENESS)) { return; } } definitions: for (IndexDefinition definition : schema.getIndexes(uniquePersonLabel)) { for (String key : definition.getPropertyKeys()) { if ("id".equals(key)) { definition.drop(); break definitions; } } } ConstraintCreator creator = schema.constraintFor(uniquePersonLabel); creator.assertPropertyIsUnique("id").create(); tx.success(); } }