mirror of
https://github.com/vector-im/hydrogen-web.git
synced 2025-01-22 18:21:39 +01:00
45 lines
1.1 KiB
Markdown
45 lines
1.1 KiB
Markdown
|
## Integratation within the sync lifetime cycle
|
||
|
|
||
|
### prepareSync
|
||
|
|
||
|
The session can start its own read/write transactions here, rooms only read from a shared transaction
|
||
|
|
||
|
- session
|
||
|
- device handler
|
||
|
- txn
|
||
|
- write pending encrypted
|
||
|
- txn
|
||
|
- olm decryption read
|
||
|
- olm async decryption
|
||
|
- dispatch to worker
|
||
|
- txn
|
||
|
- olm decryption write / remove pending encrypted
|
||
|
- rooms (with shared read txn)
|
||
|
- megolm decryption read
|
||
|
|
||
|
### afterPrepareSync
|
||
|
|
||
|
- rooms
|
||
|
- megolm async decryption
|
||
|
- dispatch to worker
|
||
|
|
||
|
### writeSync
|
||
|
|
||
|
- rooms (with shared readwrite txn)
|
||
|
- megolm decryption write, yielding decrypted events
|
||
|
- use decrypted events to write room summary
|
||
|
|
||
|
### afterSync
|
||
|
|
||
|
- rooms
|
||
|
- emit changes
|
||
|
|
||
|
### afterSyncCompleted
|
||
|
|
||
|
- session
|
||
|
- e2ee account
|
||
|
- generate more otks if needed
|
||
|
- upload new otks if needed or device keys if not uploaded before
|
||
|
- rooms
|
||
|
- share new room keys if needed
|