def add_edge(self, start_vertex, end_vertex, label, main_interface=None): db_edge = start_vertex.db_element.relationships.create(label, end_vertex.db_element) if main_interface: db_edge['main_interface'] = main_interface.__identifier__ db_edge['_exists'] = True return element_factory(db_edge)
def get_vertex(self, dbid): try: db_vertex = self.db.node[dbid] except KeyError: return None else: return element_factory(db_vertex)
def add_edge(self, start_vertex, end_vertex, label, main_interface=None): db_edge = start_vertex.db_element.relationships.create( label, end_vertex.db_element) if main_interface: db_edge['main_interface'] = main_interface.__identifier__ db_edge['_exists'] = True return element_factory(db_edge)
def add_vertex(self, main_interface=None): db_vertex = self.db.node() if main_interface: db_vertex['main_interface'] = main_interface.__identifier__ # set _exists marker to allow get_vertices to distinguish between # real vertices and vertices which have been created in another # transaction. # this is related to the following issues: # https://github.com/neo4j/community/issues/520 # https://github.com/neo4j/community/issues/457 db_vertex['_exists'] = True return element_factory(db_vertex)
def get_edges(self): return [element_factory(edge) for edge in self.db.relationships if _is_existing_element(edge)]
def get_edge(self, dbid): return element_factory(self.db.relationships[dbid])
def get_vertices(self): nodes = self.db.nodes return [element_factory(node) for node in nodes if _is_existing_element(node)]
def get_edges(self): return [ element_factory(edge) for edge in self.db.relationships if _is_existing_element(edge) ]
def get_vertices(self): nodes = self.db.nodes return [ element_factory(node) for node in nodes if _is_existing_element(node) ]