createPersister
The createPersister
method is used to return a persister for the Durable Object to preserve Store
data when clients are not connected.
createPersister(): undefined | Persister<MergeableStoreOnly> | Promise<Persister<MergeableStoreOnly>>
returns | undefined | Persister<MergeableStoreOnly> | Promise<Persister<MergeableStoreOnly>> | A new instance of a |
---|
In other words, override this method to enable persistence of the Store
data that the Durable Object is synchronizing between clients.
This should almost certainly return a DurableObjectStoragePersister
, created with the createDurableObjectStoragePersister
function. This will ensure that the Store
is serialized to the Durable Object KV-based storage.
Returning undefined
from this method will disable persistence.
Example
This example enables Durable Object persistence by creating a Persister
object within the createPersister
method of a WsServerDurableObject
.
import {WsServerDurableObject} from 'tinybase/synchronizers/synchronizer-ws-server-durable-object';
import {createDurableObjectStoragePersister} from 'tinybase/persisters/persister-durable-object-storage';
import {createMergeableStore} from 'tinybase';
export class MyDurableObject extends WsServerDurableObject {
createPersister() {
const store = createMergeableStore();
const persister = createDurableObjectStoragePersister(
store,
this.ctx.storage,
);
return persister;
}
}
Since
v5.4.0