public Vertex saveCommit(final Commit commit) {
log.trace("saveCommit: enter");
Vertex node = getOrCreateCommit(commit.getSha());
if (commit.getAuthor() != null) {
Vertex author = saveUser(commit.getAuthor());
createEdgeIfNotExist(node, author, EdgeType.COMMITAUTHOR);
setProperty(node, PropertyName.AUTHORED_DATE, commit.getAuthor().getDate());
}
if (commit.getCommitter() != null) {
Vertex committer = saveUser(commit.getCommitter());
createEdgeIfNotExist(node, committer, EdgeType.COMMITTER);
setProperty(node, PropertyName.COMMITTED_DATE, commit.getCommitter().getDate());
}
setProperty(node, PropertyName.COMMIT_ID, commit.getSha());
setProperty(node, PropertyName.MESSAGE, commit.getMessage());
setProperty(node, PropertyName.TREE, commit.getTree());
setProperty(node, PropertyName.URL, commit.getUrl());
log.trace("saveCommit: exit");
return node;
}