| coll_state.rs |
|
16699 |
- |
| coll_update.rs |
|
3901 |
- |
| collection_keys.rs |
|
2117 |
- |
| mod.rs |
A module for everything needed to be a "sync client" - ie, a device which
can perform a full sync of any number of collections, including managing
the server state.
In general, the client is responsible for all communication with the sync server,
including ensuring the state is correct, and encrypting/decrypting all records
to and from the server. However, the actual syncing of the collections is
delegated to an external [crate::engine](Sync Engine).
One exception is that the "sync client" owns one sync engine - the
[crate::clients_engine], which is managed internally. |
1541 |
- |
| request.rs |
|
41582 |
- |
| state.rs |
|
93747 |
- |
| status.rs |
|
3709 |
- |
| storage_client.rs |
|
22216 |
- |
| sync.rs |
|
4923 |
- |
| sync_ids.rs |
Maintaining `meta/syncids` when using per-device engine choices.
Clients using per-device engine choices never add or remove engines in
`meta/global` - adding one would enable it on every client using per-account
choices. So the sync IDs for engines missing from `meta/global` live in
`meta/syncids` instead. An engine in `meta/global` always uses that entry,
which we copy into `meta/syncids` so it survives the engine being removed
from `meta/global` by a client using per-account choices.
As on Desktop, an entry for an older engine version gets a new sync ID for
ours, even in `meta/global`, and one for a newer version is left alone. |
21590 |
- |
| sync_multiple.rs |
|
21758 |
- |
| token.rs |
|
22077 |
- |
| util.rs |
|
3319 |
- |