Web/ForgeTrust.Runnable.Web.RazorDocs/Services/DocAggregator.cs

DocAggregator

Type

DocAggregator

Service responsible for aggregating documentation from multiple harvesters and caching the results.
Method

GetDocsAsync(CancellationToken)

Retrieves all harvested documentation nodes sorted by their Path.
Method

GetDocByPathAsync(string, CancellationToken)

Retrieves a specific documentation node for the specified repository path.
Method

GetCachedDocsAsync(CancellationToken)

Retrieves harvested documentation nodes from the cache, harvesting and caching them if absent.
When harvesting, each configured harvester is invoked; failures from individual harvesters are caught and logged. Contents are sanitized before being cached. If multiple nodes share the same Path, a warning is logged and the first occurrence is retained. The cache entry is created with a 5-minute absolute expiration.