Nearly workign

This commit is contained in:
Dave Hrycyszyn
2024-06-11 19:16:36 +01:00
parent 097fbea9a0
commit 0a74c86c5e
3 changed files with 37 additions and 5 deletions

View File

@@ -36,7 +36,6 @@ impl SideNode {
loop {
match self.stdin_receiver.try_recv() {
Ok(stdin) => {
println!("Received stdin input: {:?}", stdin);
let transaction = utils::fake_transaction(stdin);
let json = serde_json::to_value(transaction).unwrap();
let signed_op = self.add_transaction_local(json);
@@ -54,14 +53,13 @@ impl SideNode {
}
async fn send_to_network(&self, signed_op: SignedOp) {
println!("sending to network: {:?}", signed_op);
let to_send = serde_json::to_string(&signed_op).unwrap();
self.handle.call(to_send).unwrap();
}
fn handle_incoming(&mut self, incoming: SignedOp) {
println!("WINNNINGINGINGINGINGIGNIGN");
self.crdt.apply(incoming);
self.trace_crdt();
}
pub(crate) fn add_transaction_local(
@@ -81,11 +79,12 @@ impl SideNode {
.list
.insert(last.id, transaction)
.sign(&self.keys);
self.trace_crdt();
signed_op
}
/// Print the current state of the CRDT, can be used to debug
pub(crate) fn _trace_crdt(&self) {
println!("{:?}", self.crdt.doc.list);
pub(crate) fn trace_crdt(&self) {
println!("{:?}", self.crdt.doc.view_sha());
}
}