Class: UploadRecoveryStore

UploadRecoveryStore()

new UploadRecoveryStore()

Durable, per server store for upload recovery records. Each record captures everything needed to finish the exact ResourceMap write for one metadata document, keyed by that metadata PID, so a crash between "metadata committed" and "ResourceMap committed" can be replayed on the next load. Backed by PersistentStorage (localforage/IndexedDB), so records survive a tab crash. Each record stores the exact serialized ResourceMap bytes the interrupted upload had prepared. Limited server side reconstruction is a separate, explicit recovery choice when no record can be retrieved.
Since:
  • 2.39.0
Source:

Methods

get(metadataPid) → {Promise.<(object|null)>}

Read a recovery record for a metadata PID.
Parameters:
Name Type Description
metadataPid string Metadata document PID
Source:
Returns:
The stored record, or null when absent or unavailable after one retry
Type
Promise.<(object|null)>

remove(metadataPid) → {Promise.<void>}

Remove a recovery record for a metadata PID.
Parameters:
Name Type Description
metadataPid string Metadata document PID
Source:
Returns:
Resolves when removal has been attempted
Type
Promise.<void>

save(metadataPid, record) → {Promise.<void>}

Persist a recovery record for a metadata PID.
Parameters:
Name Type Description
metadataPid string Metadata document PID the record recovers
record object Recovery record payload
Source:
Returns:
Resolves after attempting the storage write
Type
Promise.<void>

UploadRecoveryStore(optionsopt)

new UploadRecoveryStore(optionsopt)

Create an upload recovery store.
Parameters:
Name Type Attributes Description
options object <optional>
Store options
Properties
Name Type Attributes Description
storage PersistentStorage <optional>
Storage instance to use When omitted, a per server singleton is created
baseUrl string <optional>
Service base URL used to namespace the store. Defaults to the app's Member Node service URL
Source:

Methods

get(metadataPid) → {Promise.<(object|null)>}

Read a recovery record for a metadata PID.
Parameters:
Name Type Description
metadataPid string Metadata document PID
Source:
Returns:
The stored record, or null when absent or unavailable after one retry
Type
Promise.<(object|null)>

remove(metadataPid) → {Promise.<void>}

Remove a recovery record for a metadata PID.
Parameters:
Name Type Description
metadataPid string Metadata document PID
Source:
Returns:
Resolves when removal has been attempted
Type
Promise.<void>

save(metadataPid, record) → {Promise.<void>}

Persist a recovery record for a metadata PID.
Parameters:
Name Type Description
metadataPid string Metadata document PID the record recovers
record object Recovery record payload
Source:
Returns:
Resolves after attempting the storage write
Type
Promise.<void>