@Override
public void markEdgeVisible(Edge edge, Visibility visibility, Authorizations authorizations) {
if (!((InMemoryEdge) edge).canRead(authorizations)) {
return;
}
Vertex inVertex = getVertex(edge.getVertexId(Direction.IN), FetchHints.ALL_INCLUDING_HIDDEN, authorizations);
checkNotNull(inVertex, "Could not find in vertex \"" + edge.getVertexId(Direction.IN) + "\" on edge \"" + edge.getId() + "\"");
Vertex outVertex = getVertex(edge.getVertexId(Direction.OUT), FetchHints.ALL_INCLUDING_HIDDEN, authorizations);
checkNotNull(outVertex, "Could not find out vertex \"" + edge.getVertexId(Direction.OUT) + "\" on edge \"" + edge.getId() + "\"");
this.edges.getTableElement(edge.getId()).appendMarkVisibleMutation(visibility);
getSearchIndex().markElementVisible(this, edge, visibility, authorizations);
if (hasEventListeners()) {
fireGraphEvent(new MarkVisibleEdgeEvent(this, edge));
}
}