traverseEdges method
- String originKref,
- EdgeDirection direction, {
- List<
String> ? edgeTypeFilter, - int? maxDepth,
- int? limit,
- bool includePath = false,
inherited
Traverses edges to find all connected revisions.
originKref is the starting revision.
direction specifies traversal direction:
- OUTGOING: follow edges from source to target (find dependencies)
- INCOMING: follow edges from target to source (find dependents)
edgeTypeFilterfilters by edge types (empty for all).maxDepthlimits traversal depth (default: 10).limitlimits number of results (default: 100).includePathincludes full path information in results.
Implementation
Future<TraverseEdgesResponse> traverseEdges(
String originKref,
EdgeDirection direction, {
List<String>? edgeTypeFilter,
int? maxDepth,
int? limit,
bool includePath = false,
}) async {
final request = TraverseEdgesRequest()
..originKref = Kref(uri: originKref)
..direction = direction
..includePath = includePath;
if (edgeTypeFilter != null && edgeTypeFilter.isNotEmpty) {
request.edgeTypeFilter.addAll(edgeTypeFilter);
}
if (maxDepth != null) {
request.maxDepth = maxDepth;
}
if (limit != null) {
request.limit = limit;
}
return stub.traverseEdges(request, options: callOptions);
}