public void scanRepository(GHRepository repo) {
logger.info("scanning repo: {}", repo.getName());
ObjectNode n = mapper.createObjectNode();
n.put("name", repo.getName());
n.put("description", repo.getDescription());
n.put("fullName", repo.getFullName());
n.put("homepage", repo.getHomepage());
n.put("sshUrl", repo.getSshUrl());
if (repo.getHtmlUrl() != null) {
n.put("htmlUrl", repo.getHtmlUrl().toString());
}
n.put("url", repo.getUrl().toString());
n.put("gitTransportUrl", repo.getGitTransportUrl());
String cypher = "merge (r:SCMRepo:GitHubRepo {url:{url}}) set r+={props},r.updateTs=timestamp() return r";
getProjector().getNeoRxClient().execCypher(cypher, "url", repo.getUrl().toString(), "props", n);
}