chore: changes to make appflowy cloud compile under the latest appflowy collab

This commit is contained in:
Bartosz Sypytkowski 2024-10-11 08:51:49 +02:00
parent 6109e3a32d
commit b32ef04099
2 changed files with 26 additions and 12 deletions

View File

@ -186,7 +186,7 @@ where
_event: &Event,
update: &AwarenessUpdate,
) {
let payload = Message::Awareness(update.clone()).encode_v1();
let payload = Message::Awareness(update.encode_v1()).encode_v1();
self.sync_queue.queue_msg(|msg_id| {
let update_sync = UpdateSync::new(origin.clone(), object_id.to_string(), payload, msg_id);
if cfg!(feature = "sync_verbose_log") {

View File

@ -1073,21 +1073,35 @@ impl CollabPersister {
}
async fn load_collab_full(&self, keep_history: bool) -> Result<Collab, RealtimeError> {
let params = QueryCollabParams::new(
self.object_id.clone(),
self.collab_type.clone(),
self.workspace_id.clone(),
);
let encoded_collab = self
.storage
.get_encode_collab(GetCollabOrigin::Server, params, false)
.await
.map_err(|err| RealtimeError::Internal(err.into()))?;
let doc_state = if keep_history {
// if we want history-keeping variant, we need to get a snapshot
let snapshot = self
.storage
.get_collab_snapshot(&self.workspace_id, &self.object_id, &1)
.await
.map_err(|err| RealtimeError::Internal(err.into()))?;
let encoded_collab = EncodedCollab::decode_from_bytes(&snapshot.encoded_collab_v1)
.map_err(|err| RealtimeError::Internal(err.into()))?;
encoded_collab.doc_state
} else {
// if we want a lightweight variant, we need to get a collab
let params = QueryCollabParams::new(
self.object_id.clone(),
self.collab_type.clone(),
self.workspace_id.clone(),
);
self
.storage
.get_encode_collab(GetCollabOrigin::Server, params, false)
.await
.map_err(|err| RealtimeError::Internal(err.into()))?
.doc_state
};
let collab: Collab = Collab::new_with_source(
CollabOrigin::Server,
&self.object_id,
DataSource::DocStateV1(encoded_collab.doc_state.into()),
DataSource::DocStateV1(doc_state.into()),
vec![],
keep_history, // should we use history-remembering version (true) or lightweight one (false)?
)?;