Changeset View
Changeset View
Standalone View
Standalone View
swh/graph/http_client.py
Show First 20 Lines • Show All 46 Lines • ▼ Show 20 Lines | def raise_for_status(self, response) -> None: | ||||
super().raise_for_status(response) | super().raise_for_status(response) | ||||
# Web API endpoints | # Web API endpoints | ||||
def stats(self): | def stats(self): | ||||
return self.get("stats") | return self.get("stats") | ||||
def leaves( | def leaves( | ||||
self, src, edges="*", direction="forward", max_edges=0, return_types="*" | self, | ||||
src, | |||||
edges="*", | |||||
direction="forward", | |||||
max_edges=0, | |||||
return_types="*", | |||||
max_matching_nodes=0, | |||||
): | ): | ||||
return self.get_lines( | return self.get_lines( | ||||
"leaves/{}".format(src), | "leaves/{}".format(src), | ||||
params={ | params={ | ||||
"edges": edges, | "edges": edges, | ||||
"direction": direction, | "direction": direction, | ||||
"max_edges": max_edges, | "max_edges": max_edges, | ||||
"return_types": return_types, | "return_types": return_types, | ||||
"max_matching_nodes": max_matching_nodes, | |||||
}, | }, | ||||
) | ) | ||||
def neighbors( | def neighbors( | ||||
self, src, edges="*", direction="forward", max_edges=0, return_types="*" | self, src, edges="*", direction="forward", max_edges=0, return_types="*" | ||||
): | ): | ||||
return self.get_lines( | return self.get_lines( | ||||
"neighbors/{}".format(src), | "neighbors/{}".format(src), | ||||
▲ Show 20 Lines • Show All 60 Lines • ▼ Show 20 Lines | ): | ||||
params={ | params={ | ||||
"edges": edges, | "edges": edges, | ||||
"direction": direction, | "direction": direction, | ||||
"limit": limit, | "limit": limit, | ||||
"return_types": return_types, | "return_types": return_types, | ||||
}, | }, | ||||
) | ) | ||||
def count_leaves(self, src, edges="*", direction="forward"): | def count_leaves(self, src, edges="*", direction="forward", max_matching_nodes=0): | ||||
return self.get( | return self.get( | ||||
"leaves/count/{}".format(src), | "leaves/count/{}".format(src), | ||||
params={"edges": edges, "direction": direction}, | params={ | ||||
"edges": edges, | |||||
"direction": direction, | |||||
"max_matching_nodes": max_matching_nodes, | |||||
}, | |||||
) | ) | ||||
def count_neighbors(self, src, edges="*", direction="forward"): | def count_neighbors(self, src, edges="*", direction="forward"): | ||||
return self.get( | return self.get( | ||||
"neighbors/count/{}".format(src), | "neighbors/count/{}".format(src), | ||||
params={"edges": edges, "direction": direction}, | params={"edges": edges, "direction": direction}, | ||||
) | ) | ||||
def count_visit_nodes(self, src, edges="*", direction="forward"): | def count_visit_nodes(self, src, edges="*", direction="forward"): | ||||
return self.get( | return self.get( | ||||
"visit/nodes/count/{}".format(src), | "visit/nodes/count/{}".format(src), | ||||
params={"edges": edges, "direction": direction}, | params={"edges": edges, "direction": direction}, | ||||
) | ) |