Class S100FeedScope
- Namespace
- EncDotNet.S100.Collections.Library
- Assembly
- EncDotNet.S100.Collections.dll
A scope of an S-100 feed (issue #680), e.g. one served by s100 feed serve: by product.
public sealed class S100FeedScope : LibraryCatalogueScope
- Inheritance
-
S100FeedScope
- Inherited Members
Constructors
S100FeedScope(Uri, Func<Uri, CancellationToken, Task<S100FeedDocument>>)
Creates a scope of the feed at feedUri.
public S100FeedScope(Uri feedUri, Func<Uri, CancellationToken, Task<S100FeedDocument>> load)
Parameters
feedUriUriThe feed's URL.
loadFunc<Uri, CancellationToken, Task<S100FeedDocument>>Reads the feed.
Properties
CurrentFilter
The filter for the ticked products.
public S100FeedFilter CurrentFilter { get; }
Property Value
EverythingSummary
"12,345 cells · 1.2 GB" for the whole catalogue.
public override string EverythingSummary { get; }
Property Value
Groups
The choice groups, once the catalogue has been read.
public override IReadOnlyList<LibraryChoiceGroup> Groups { get; }
Property Value
IsLoaded
True once the catalogue has been read.
public override bool IsLoaded { get; }
Property Value
Products
The feed's products.
public IReadOnlyList<LibraryChoice> Products { get; }
Property Value
SelectionSummary
What the ticked choices (or, with none, the whole catalogue) amount to, e.g. "12 cells · 3 MB".
public override string SelectionSummary { get; }
Property Value
SingleEntry
The catalogue's only download, when it lists just one (there is nothing to choose); otherwise null.
public override LibraryChoice? SingleEntry { get; }
Property Value
Methods
Build(Guid, string?)
The source the scope describes.
public override CollectionSource Build(Guid id, string? name)
Parameters
idGuidThe new source's id.
namestringThe source's name when everything is included (the catalogue's name); a selection names it after the selection. A manifest source always takes it.
Returns
DescribeSelection()
The selected products, or null for all (the source is then named after the feed).
public override string? DescribeSelection()
Returns
LoadAsync(CancellationToken)
Reads the catalogue and creates its choices.
public override Task<string?> LoadAsync(CancellationToken cancellationToken = default)
Parameters
cancellationTokenCancellationTokenCancels the read.