Write to disk Member when process is pairing
This commit is contained in:
parent
90f83efd3d
commit
6ec0491aae
@ -76,7 +76,12 @@ fn handle_initial_transaction(tx: Transaction, commit_msg: &CommitMessage) -> Re
|
||||
|
||||
let merkle_root_bin = pcd_commitment.create_merkle_tree()?.root().unwrap();
|
||||
|
||||
handle_member_list(pcd_commitment, &parsed_roles, root_commitment)?;
|
||||
match handle_member_list(pcd_commitment, &parsed_roles, root_commitment) {
|
||||
Ok(()) => {
|
||||
dump_cached_members()?;
|
||||
}
|
||||
Err(e) => log::error!("{}", e)
|
||||
}
|
||||
|
||||
let mut new_process = Process::new(root_commitment);
|
||||
let init_state = ProcessState {
|
||||
@ -119,7 +124,7 @@ fn handle_member_list(pcd_commitment: &Value, roles: &HashMap<String, RoleDefini
|
||||
|| !pcd_map.contains_key("session_privkey")
|
||||
|| !pcd_map.contains_key("session_pubkey")
|
||||
{
|
||||
return Err(Error::msg("Pcd must contain all keys for a pairing process"));
|
||||
return Err(Error::msg("Process is not a pairing process"));
|
||||
}
|
||||
} else {
|
||||
return Err(Error::msg("Pcd is missing"));
|
||||
@ -160,6 +165,20 @@ fn handle_existing_commitment(outpoint: OutPoint, commit_msg: CommitMessage) ->
|
||||
}
|
||||
}
|
||||
|
||||
pub fn dump_cached_members() -> Result<(), anyhow::Error> {
|
||||
let members = lock_members()?.clone();
|
||||
|
||||
let storage = STORAGE.get().ok_or(Error::msg("STORAGE is not initialized"))?.lock_anyhow()?;
|
||||
|
||||
let members_file = &storage.members_file;
|
||||
|
||||
members_file.save(&members)?;
|
||||
|
||||
log::debug!("saved members");
|
||||
|
||||
Ok(())
|
||||
}
|
||||
|
||||
pub fn dump_cached_processes() -> Result<(), anyhow::Error> {
|
||||
let processes = lock_processes()?.clone();
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user