public Vertex saveGist(final Gist gist) { Vertex node = getOrCreateGist(gist.getId()); setProperty(node, PropertyName.CREATED_AT, gist.getCreatedAt()); setProperty(node, PropertyName.DESCRIPTION, gist.getDescription()); for (Map.Entry<String, GistFile> gistFile : gist.getFiles().entrySet()) { Vertex filenode = saveGistFile(gist.getId(), gistFile.getValue()); createEdgeIfNotExist(null, node, filenode, EdgeType.GISTFILE); } setProperty(node, PropertyName.OWNER, gist.getUser().getLogin()); setProperty(node, PropertyName.COMMENTS, gist.getComments()); setProperty(node, PropertyName.GIT_PULL_URL, gist.getGitPullUrl()); setProperty(node, PropertyName.GIT_PUSH_URL, gist.getGitPushUrl()); setProperty(node, PropertyName.URL, gist.getUrl()); setProperty(node, PropertyName.UPDATED_AT, gist.getUpdatedAt()); setProperty(node, PropertyName.HTML_URL, gist.getHtmlUrl()); return node; }