@Override public Void doInTransaction(TransactionStatus status) { for (Object object : readValues) { neo4jTemplate.save(object); } return null; } });
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; } });
@Override public List<Object> doInTransaction(TransactionStatus status) { Result<?> allEntities = neo4jTemplate.findAll(entityClass); final List<Object> fetchedData = fetchData(neo4jTemplate, allEntities); return fetchedData; }
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; } }); }
@Override @Transactional public boolean removeSimilarContent(String contentId, SimilarContent similarContent) { ContentNode sourceNode = getContentById(contentId, false); ContentNode targetNode = getContentById(similarContent.getContentId(), false); Iterable<SimilarityRelation> relations = template.getRelationshipsBetween(sourceNode, targetNode, SimilarityRelation.class, SimilarityRelation.TYPE); for (SimilarityRelation relation : relations) { if (areEqual(similarContent.getSimilarityType(), relation.getType())) { template.delete(relation); return true; } } return false; }
private Neo4jTemplate neo4jTemplate(Neo4jConnectionCallback connection) { GraphDatabaseService graphDatabaseService = connection.graphDatabaseService(); Neo4jTemplate neo4jTemplate = new Neo4jTemplate(graphDatabaseService); return neo4jTemplate; }
private String getTargetContentId(SimilarityRelation relation, Long nodeId) { Optional<Long> result = Sets.newHashSet(relation.getStartNodeId(), relation.getEndNodeId()).stream().filter(id-> !nodeId.equals(id)).findFirst(); Node target = template.getGraphDatabase().getNodeById(result.get()); return (String) target.getProperty(AbstractNode.FIELD_ID); }
public SimilarityRelation getRelationByContentIdAndSimilarContent(String contentId, SimilarContent similarContent) { ContentNode sourceNode = getContentById(contentId, false); ContentNode targetNode = getContentById(similarContent.getContentId(), false); Iterable<SimilarityRelation> relations = template.getRelationshipsBetween(sourceNode, targetNode, SimilarityRelation.class, SimilarityRelation.TYPE); for (SimilarityRelation relation : relations) { if (areEqual(similarContent.getSimilarityType(), relation.getType())) { return relation; } } 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 Neo4jTemplate neo4jTemplate(Neo4jConnectionCallback connection) { GraphDatabaseService graphDatabaseService = connection.graphDatabaseService(); return new Neo4jTemplate(graphDatabaseService); } }
@Autowired Neo4jTemplate template; public Country save(Country country){ return template.save(country); }
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; } }); }
@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 Neo4jTemplate neo4jTemplate(Neo4jConnectionCallback connection) { GraphDatabaseService graphDatabaseService = connection.graphDatabaseService(); Neo4jTemplate neo4jTemplate = new Neo4jTemplate(graphDatabaseService); return neo4jTemplate; }
@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; } }); }
@Service @Component @Transactional @Qualifier("userService") public class UserService { @Autowired private Neo4jTemplate template; @Autowired private UserRepository userRepository; @Transactional public User createUserNode(User user) { return userRepository.save(user); } public List<User> getAllUsers() { List<User> allList = new ArrayList<User>(); Iterable<User> users = template.findAll(User.class); if (users != null) { for (User u : users) { allList.add(u); } } return allList; }
@Bean @Transactional public ResourceProcessor<Resource> fetchProcessor() { return new ResourceProcessor<Resource>() { @Autowired Neo4jTemplate template; @Override public Resource process(Resource resource) { final Object content = resource.getContent(); if (content != null) { template.fetch(content); } return resource; } }; }