Class IngestionSource
Where a run's documents come from. The abstract shape is two members; the five factories below cover the filesystem shape and the mobile shape (spec 11, 11.3).
public abstract class IngestionSource
- Inheritance
-
IngestionSource
- Inherited Members
Properties
- Id
Stable, non-empty. Every state row and every chunk carries it.
Methods
- EnumerateAsync(CancellationToken)
Streams the source's items. Enumeration order is the run's document order.
- Files(IEnumerable<string>, string)
Filesystem paths only, same caveat as Folder(string, string, bool, string?).
- Folder(string, string, bool, string?)
FILESYSTEM PATHS ONLY. Ordinal-sorted; document ids are forward-slashed paths relative to the root. This is the desktop and app-private-storage shape — see spec 11.3 for mobile.
- Items(IEnumerable<DocumentSourceItem>, string)
THE MOBILE SHAPE. Opaque handles: a SAF content:// URI, a security-scoped bookmark, a MAUI FileResult, a blob in app storage. SP3 never interprets the handle; the consumer's OpenAsync does. See spec 11.3.
- Items(Func<CancellationToken, IAsyncEnumerable<DocumentSourceItem>>, string)
Streaming form, for a picker that pages or a provider that enumerates lazily.
- Single(string, string, Func<CancellationToken, ValueTask<Stream>>, string, long?, DateTimeOffset?)
One document, opened by a consumer-supplied delegate.