handling a create message now uses the Message Struct
This commit is contained in:
Submodule first-render updated: face43116d...51815cb289
Submodule js-client updated: f649c1314a...c12d6a2a4e
@@ -184,6 +184,7 @@ async fn handle_socket_connection(
|
|||||||
|
|
||||||
// Reading and broadcasting messages
|
// Reading and broadcasting messages
|
||||||
while let Some(result) = socket_rx.next().await {
|
while let Some(result) = socket_rx.next().await {
|
||||||
|
println!("got message ==================================");
|
||||||
let msg = result.expect("Error when gettin message from WebSocket");
|
let msg = result.expect("Error when gettin message from WebSocket");
|
||||||
|
|
||||||
let itemstore = &*itemstore_clone.lock().await;
|
let itemstore = &*itemstore_clone.lock().await;
|
||||||
|
|||||||
@@ -99,8 +99,7 @@ impl Itemstore {
|
|||||||
}
|
}
|
||||||
|
|
||||||
//increment commit number
|
//increment commit number
|
||||||
let mut commit_key = id.to_be_bytes().to_vec();
|
let mut commit_key = format!("{}:_commit", id).into_bytes();
|
||||||
commit_key.extend(":_commit".to_string().into_bytes());
|
|
||||||
|
|
||||||
let mut commit_num: u64 = match tr.get(&*commit_key).await {
|
let mut commit_num: u64 = match tr.get(&*commit_key).await {
|
||||||
Ok(Some(val)) => u64::from_be_bytes(val.try_into().expect("error converting _commit num to u64")),
|
Ok(Some(val)) => u64::from_be_bytes(val.try_into().expect("error converting _commit num to u64")),
|
||||||
|
|||||||
@@ -5,8 +5,6 @@ use std::vec;
|
|||||||
use crate::server::itemstore;
|
use crate::server::itemstore;
|
||||||
use crate::server::itemstore::encode;
|
use crate::server::itemstore::encode;
|
||||||
|
|
||||||
use super::itemstore::Itemstore;
|
|
||||||
|
|
||||||
pub enum Response {
|
pub enum Response {
|
||||||
One(Vec<u8>),
|
One(Vec<u8>),
|
||||||
All(Vec<u8>),
|
All(Vec<u8>),
|
||||||
@@ -176,7 +174,7 @@ pub async fn handle_mize_message(
|
|||||||
|
|
||||||
let num_of_updates = message.get_u32();
|
let num_of_updates = message.get_u32();
|
||||||
|
|
||||||
for i in 1..num_of_updates as usize {
|
for i in 0..num_of_updates as usize {
|
||||||
let key_len = message.get_u32();
|
let key_len = message.get_u32();
|
||||||
let key = message.get_bytes(key_len as usize);
|
let key = message.get_bytes(key_len as usize);
|
||||||
//println!("KEY: {}", String::from_utf8(key.clone()).expect("here utf-8"));
|
//println!("KEY: {}", String::from_utf8(key.clone()).expect("here utf-8"));
|
||||||
@@ -223,23 +221,17 @@ pub async fn handle_mize_message(
|
|||||||
|
|
||||||
//create
|
//create
|
||||||
12 => {
|
12 => {
|
||||||
let tmp = &old_message[2..6];
|
let num_of_fields = message.get_u32();
|
||||||
let num_of_fields: u32 = u32::from_be_bytes([tmp[0], tmp[1], tmp[2], tmp[3]]);
|
|
||||||
let mut item: Vec<[Vec<u8>; 2]> = Vec::new();
|
let mut item: Vec<[Vec<u8>; 2]> = Vec::new();
|
||||||
|
|
||||||
let mut index = 6;
|
let mut index = 6;
|
||||||
|
|
||||||
for i in 0..num_of_fields {
|
for i in 0..num_of_fields {
|
||||||
let mut tmp = &old_message[index..index + 4];
|
let key_len = message.get_u32();
|
||||||
let key_len = u32::from_be_bytes([tmp[0], tmp[1], tmp[2], tmp[3]]);
|
let key = message.get_bytes(key_len as usize);
|
||||||
let key = old_message[index + 4..(index + 4 + key_len as usize)].to_vec();
|
|
||||||
|
|
||||||
index += 4 + key_len as usize;
|
let val_len = message.get_u32();
|
||||||
|
let val = message.get_bytes(val_len as usize);
|
||||||
tmp = &old_message[index..index + 4];
|
|
||||||
let val_len = u32::from_be_bytes([tmp[0], tmp[1], tmp[2], tmp[3]]);
|
|
||||||
let val = old_message[index + 4..(index + 4 + val_len as usize)].to_vec();
|
|
||||||
|
|
||||||
index += 4 + val_len as usize;
|
|
||||||
|
|
||||||
item.push([key, val]);
|
item.push([key, val]);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user