QueryLease
[<Class>]
type QueryLease<'T> =
member State: QuerySnapshot<'T>
member Value: 'T
member Dispose () : unit
member Ensure () : unit
member EnsureAsync () : Task<'T>
member Refresh () : unit
member RefreshAsync () : Task<'T>
| |
|---|
| Assembly | Ranvier.Query |
| Implements | IDisposable |
| Attributes | [<Sealed>] |
A page-owned reference to a query. Dispose it when the page is removed.
Properties
member State: QuerySnapshot<'T>
A tracked snapshot, including retained data during refresh or refresh failure.
member Value: 'T
A tracked cached value; initial loading suspends and an initial failure throws.
Methods
member Dispose () : unit
Releases this lease once. Further reads throw.
member Ensure () : unit
Fetches missing or stale data, joining an existing request.
member EnsureAsync () : Task<'T>
Loads missing or stale data and awaits graph publication, joining an existing request.
The task faults on fetch failure and cancels on supersession, reconciliation, or lease/client disposal.
member Refresh () : unit
Starts a new request, superseding any existing one.
member RefreshAsync () : Task<'T>
Supersedes the current request and awaits the replacement's graph publication.
Failure faults the task while retaining cached data. Retirement or disposal cancels the task.