style: code style

This commit is contained in:
2021-01-01 23:31:18 +08:00
parent 2a2d33be2c
commit 0094ce2e5c
3 changed files with 9 additions and 26 deletions

View File

@@ -1,6 +1,6 @@
use std::{collections::HashMap, fs, fs::File};
use rust_util::XResult;
use std::collections::HashMap;
use serde::{Serialize, Deserialize};
use rust_util::XResult;
use crate::tx::Transaction;
#[derive(Debug, Serialize, Deserialize)]
@@ -21,7 +21,6 @@ impl CreditContract {
admin: tx.sender.clone(),
credit: HashMap::new(),
};
save_credit_contract(&c, false)?;
Ok(c)
}
@@ -40,7 +39,6 @@ impl CreditContract {
Some(cr) => *cr += credit,
}
self.issue_amount += credit;
save_credit_contract(self, true)?;
Ok(())
}
@@ -62,7 +60,6 @@ impl CreditContract {
}
},
}
save_credit_contract(self, true)?;
Ok(())
}
@@ -77,22 +74,3 @@ impl CreditContract {
&self.credit
}
}
// ========================================================================= //
pub fn load_credit_contract(name: &str) -> XResult<CreditContract> {
let json = fs::read_to_string(name)?;
serde_json::from_str(&json).map_err(|e| e.into())
}
fn save_credit_contract(c: &CreditContract, overwrite: bool) -> XResult<()> {
let name = &c.name;
if !overwrite {
if let Ok(_) = File::open(name) {
return simple_error!("File exists: {}", name);
}
}
information!("Write file: {}", name);
fs::write(name, serde_json::to_string(c)?.as_bytes())?;
Ok(())
}

View File

@@ -1,6 +1,7 @@
use serde::{Serialize, Deserialize};
use rust_util::XResult;
use crate::credit::{CreditContract, load_credit_contract};
use crate::credit::CreditContract;
use crate::credit_util::{save_credit_contract, load_credit_contract};
use crate::tx::{Transaction, TransactionBody};
#[derive(Debug, Serialize, Deserialize)]
@@ -49,17 +50,20 @@ impl ContractEngineCredit {
match action {
"create" => {
let params: CreditContractCreateParameters = serde_json::from_str(&tx_body.parameters)?;
CreditContract::new(tx, &params.name, params.credit_limit)?;
let c = CreditContract::new(tx, &params.name, params.credit_limit)?;
save_credit_contract(&c, false)?;
},
"issue" => {
let params: CreditContractIssueParameters = serde_json::from_str(&tx_body.parameters)?;
let mut c = load_credit_contract(&params.name)?;
c.issue(tx, &params.receiver, params.credit)?;
save_credit_contract(&c, true)?;
},
"transfer" => {
let params: CreditContractTransferParameters = serde_json::from_str(&tx_body.parameters)?;
let mut c =load_credit_contract(&params.name)?;
c.transfer(tx, &params.receiver, params.credit)?;
save_credit_contract(&c, true)?;
},
"query" => {
let params: CreditContractQueryParameters = serde_json::from_str(&tx_body.parameters)?;

View File

@@ -3,6 +3,7 @@
mod util;
mod tx;
mod credit;
mod credit_util;
mod engine;
mod engine_plugin_credit;