RecordsTracker<Record, Update> mixin

Tracks changes of individual records in the list.

The records must be able to provide a Stream for tracking (as records, for example, Cubits from package Bloc can be used). When the list is changed, the new records must be registered for tracking by calling registerRecordsToTrack.

Superclass Constraints

Properties

actualizeCompleter Completer<void>?
Completer to indicate that the list is being actualized.
getter/setter pairinherited
hashCode int
The hash code for this object.
no setterinherited
isListClosed bool
Indicates that the closeList function has been called.
getter/setter pairinherited
replaceOperationId int
The identifier of the current list.
getter/setter pairinherited
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
trackingPeriod Duration
The interval of time during which record events will be collected before onTrackEventOccur is called.
no setter

Methods

buildBufferStream(Stream<Update> eventStream) Stream<void>
Creates a thread, each event of which initiates the end of collecting events from the list records and calling the onTrackEventOccur function.
buildTrackingStream(Record record) Stream<Update>
The function should return a Stream of record updates.
closeList() → void
Stops all processes in the list controller.
override
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
onTrackEventOccur(List<Update> updatedRecords) → void
Called when there were changes in the records.
registerRecordsToTrack(List<Record> records) → void
Registers records that should to be tracked for changes.
resetController() → void
Interrupts all processes occurring in the list controller: of loading and updating records.
inherited
stopTracking() → void
Stops records tracking.
toString() String
A string representation of this object.
inherited
waitAllLoadsToComplete() Future<void>
Returns Future, which completes either immediately if there are no other loads, or upon completion of all loads.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited