style: credit contract style
This commit is contained in:
@@ -25,10 +25,6 @@ impl CreditContract {
|
|||||||
Ok(c)
|
Ok(c)
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn load(name: &str) -> XResult<Self> {
|
|
||||||
load_credit_contract(name)
|
|
||||||
}
|
|
||||||
|
|
||||||
pub fn issue(&mut self, tx: &Transaction, receiver: &str, credit: u32) -> XResult<()> {
|
pub fn issue(&mut self, tx: &Transaction, receiver: &str, credit: u32) -> XResult<()> {
|
||||||
if &self.admin != &tx.sender {
|
if &self.admin != &tx.sender {
|
||||||
return simple_error!("Current user is not admin, {} vs {:?}", self.admin, tx.sender);
|
return simple_error!("Current user is not admin, {} vs {:?}", self.admin, tx.sender);
|
||||||
@@ -82,7 +78,9 @@ impl CreditContract {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
fn load_credit_contract(name: &str) -> XResult<CreditContract> {
|
|
||||||
|
// ========================================================================= //
|
||||||
|
pub fn load_credit_contract(name: &str) -> XResult<CreditContract> {
|
||||||
let json = fs::read_to_string(name)?;
|
let json = fs::read_to_string(name)?;
|
||||||
serde_json::from_str(&json).map_err(|e| e.into())
|
serde_json::from_str(&json).map_err(|e| e.into())
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
use serde::{Serialize, Deserialize};
|
use serde::{Serialize, Deserialize};
|
||||||
use rust_util::XResult;
|
use rust_util::XResult;
|
||||||
use crate::credit::CreditContract;
|
use crate::credit::{CreditContract, load_credit_contract};
|
||||||
use crate::tx::{Transaction, TransactionBody};
|
use crate::tx::{Transaction, TransactionBody};
|
||||||
|
|
||||||
#[derive(Debug, Serialize, Deserialize)]
|
#[derive(Debug, Serialize, Deserialize)]
|
||||||
@@ -53,22 +53,22 @@ impl ContractEngineCredit {
|
|||||||
},
|
},
|
||||||
"issue" => {
|
"issue" => {
|
||||||
let params: CreditContractIssueParameters = serde_json::from_str(&tx_body.parameters)?;
|
let params: CreditContractIssueParameters = serde_json::from_str(&tx_body.parameters)?;
|
||||||
let mut c = CreditContract::load(¶ms.name)?;
|
let mut c = load_credit_contract(¶ms.name)?;
|
||||||
c.issue(tx, ¶ms.receiver, params.credit)?;
|
c.issue(tx, ¶ms.receiver, params.credit)?;
|
||||||
},
|
},
|
||||||
"transfer" => {
|
"transfer" => {
|
||||||
let params: CreditContractTransferParameters = serde_json::from_str(&tx_body.parameters)?;
|
let params: CreditContractTransferParameters = serde_json::from_str(&tx_body.parameters)?;
|
||||||
let mut c = CreditContract::load(¶ms.name)?;
|
let mut c =load_credit_contract(¶ms.name)?;
|
||||||
c.transfer(tx, ¶ms.receiver, params.credit)?;
|
c.transfer(tx, ¶ms.receiver, params.credit)?;
|
||||||
},
|
},
|
||||||
"query" => {
|
"query" => {
|
||||||
let params: CreditContractQueryParameters = serde_json::from_str(&tx_body.parameters)?;
|
let params: CreditContractQueryParameters = serde_json::from_str(&tx_body.parameters)?;
|
||||||
let c = CreditContract::load(¶ms.name)?;
|
let c = load_credit_contract(¶ms.name)?;
|
||||||
information!("Query: {}, credit: {}", ¶ms.account, c.query(tx, ¶ms.account));
|
information!("Query: {}, credit: {}", ¶ms.account, c.query(tx, ¶ms.account));
|
||||||
},
|
},
|
||||||
"query_all" => {
|
"query_all" => {
|
||||||
let params: CreditContractQueryAllParameters = serde_json::from_str(&tx_body.parameters)?;
|
let params: CreditContractQueryAllParameters = serde_json::from_str(&tx_body.parameters)?;
|
||||||
let c = CreditContract::load(¶ms.name)?;
|
let c = load_credit_contract(¶ms.name)?;
|
||||||
let map = c.query_all(tx);
|
let map = c.query_all(tx);
|
||||||
map.iter().for_each(|(k , v)| {
|
map.iter().for_each(|(k , v)| {
|
||||||
information!("Query: {}, credit: {}", k, v);
|
information!("Query: {}, credit: {}", k, v);
|
||||||
|
|||||||
Reference in New Issue
Block a user