FilePersistor class
A worker abstraction that creates a background worker isolate to process file persistence/hydration.
Constructors
-
FilePersistor({void onPersist(Set<
Document> batch)?, void onClear(Set<Collection> collections)?, void onClearAll()?, void onHydrate(Json data)?, void onSync()?, FilePersistorSettings settings = const FilePersistorSettings(), Duration persistenceThrottle = const Duration(milliseconds: 100)})
Properties
- hashCode → int
-
The hash code for this object.
no setterinherited
-
onClear
→ void Function(Set<
Collection> collections)? -
finalinherited
- onClearAll → void Function()?
-
finalinherited
- onHydrate → void Function(Json data)?
-
finalinherited
-
onPersist
→ void Function(Set<
Document> batch)? -
finalinherited
- onSync → void Function()?
-
final
- persistenceThrottle → Duration
-
The throttle for batching persisted documents. All documents updated within the throttle
duration are batched together into a single persist operation.
final
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- settings → FilePersistorSettings
-
final
Methods
-
clear(
List< Collection> collections) → Future<void> -
Clear function used to clear all documents under the given collections.
override
-
clearAll(
) → Future< void> -
Clears all documents and removes all persisted data.
override
-
hydrate(
[List< StoreReference> ? refs]) → Future<Json> -
Hydration function called to read data from persistence. If no entities are specified,
then it hydrations all persisted data. if entities are specified, it hydrates only the data from
the paths under those entities.
override
-
init(
) → Future< void> -
Public APIs to be implemented by any Persistor extension like FilePersistor.
override
-
initDirectory(
) → Future< Directory> - Initializes the directory in which files are persisted. This needs to be done on the main isolate as opposed to the worker since it requires access to plugins that are not easily available in the worker isolate context.
-
initEncrypter(
) → Future< Encrypter?> - Initializes the encrypter used for encrypting files. This needs to be done on the main isolate as opposed to the worker since it requires access to plugins that are not easily available in the worker isolate context.
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
persist(
List< Document> docs) → Future<void> -
Persist function called with the bath of documents that have changed (including been deleted) within the last throttle window
specified by the
Persistor.persistenceThrottle
duration.override -
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited
Static Properties
- defaultKey → FilePersistorValueKey
-
The name of the default FileDataStore key.
final
Static Methods
-
key<
T> (String value) → FilePersistorValueKey -
keyBuilder<
T> (String builder(DocumentSnapshot< T> snap)) → FilePersistorBuilderKey