From 8e3456576b8ebcf853441d688443d407bfc41b2f Mon Sep 17 00:00:00 2001 From: canonbrother Date: Mon, 1 Jul 2024 16:05:53 +0800 Subject: [PATCH] fmt --- lib/ain-ocean/src/api/address.rs | 42 ++++++++++++++++++-------------- lib/ain-ocean/src/indexer/mod.rs | 35 +++++++++++++++++++++----- lib/ain-ocean/src/lib.rs | 8 +++--- 3 files changed, 57 insertions(+), 28 deletions(-) diff --git a/lib/ain-ocean/src/api/address.rs b/lib/ain-ocean/src/api/address.rs index 6bac104f458..8d2dbd6b400 100644 --- a/lib/ain-ocean/src/api/address.rs +++ b/lib/ain-ocean/src/api/address.rs @@ -9,7 +9,9 @@ use super::{ }; use crate::{ error::ApiError, - model::{BlockContext, ScriptActivity, ScriptActivityTypeHex, ScriptAggregation, ScriptUnspent}, + model::{ + BlockContext, ScriptActivity, ScriptActivityTypeHex, ScriptAggregation, ScriptUnspent, + }, repository::RepositoryOps, storage::SortOrder, Error, Result, @@ -193,17 +195,13 @@ impl From for ScriptActivityResponse { r#type: v.script.r#type, hex: v.script.hex.to_lower_hex_string(), }, - vin: v.vin.map(|vin| { - ScriptActivityVinVoutResponse { - txid: vin.txid, - n: vin.n - } + vin: v.vin.map(|vin| ScriptActivityVinVoutResponse { + txid: vin.txid, + n: vin.n, }), - vout: v.vout.map(|vout| { - ScriptActivityVinVoutResponse { - txid: vout.txid, - n: vout.n - } + vout: v.vout.map(|vout| ScriptActivityVinVoutResponse { + txid: vout.txid, + n: vout.n, }), value: v.value, token_id: v.token_id, @@ -237,27 +235,35 @@ async fn list_transactions( .as_ref() .map(|next| { let height = &next[0..8]; - let vin_vout_type = &next[8..8+2]; - let txid = &next[8+2..64+8+2]; - let n = &next[64+8+2..]; + let vin_vout_type = &next[8..8 + 2]; + let txid = &next[8 + 2..64 + 8 + 2]; + let n = &next[64 + 8 + 2..]; let height = height.parse::()?; let vin_vout_type = match vin_vout_type { - "00" => ScriptActivityTypeHex::Vin, - _ => ScriptActivityTypeHex::Vout, + "00" => ScriptActivityTypeHex::Vin, + _ => ScriptActivityTypeHex::Vout, }; let txid = Txid::from_str(txid)?; let n = n.parse::()?; Ok::<(u32, ScriptActivityTypeHex, Txid, usize), Error>((height, vin_vout_type, txid, n)) }) .transpose()? - .unwrap_or((u32::MAX, ScriptActivityTypeHex::Vout, Txid::from_byte_array([0xffu8; 32]), usize::MAX)); + .unwrap_or(( + u32::MAX, + ScriptActivityTypeHex::Vout, + Txid::from_byte_array([0xffu8; 32]), + usize::MAX, + )); let res = ctx .services .script_activity .by_id - .list(Some((hid.clone(), next.0, next.1, next.2, next.3)), SortOrder::Descending)? + .list( + Some((hid.clone(), next.0, next.1, next.2, next.3)), + SortOrder::Descending, + )? .skip(query.next.is_some() as usize) .take(query.size) .take_while(|item| match item { diff --git a/lib/ain-ocean/src/indexer/mod.rs b/lib/ain-ocean/src/indexer/mod.rs index ed353bae5e3..983e10cc633 100644 --- a/lib/ain-ocean/src/indexer/mod.rs +++ b/lib/ain-ocean/src/indexer/mod.rs @@ -159,7 +159,7 @@ fn find_tx_vout( hex: vout.script_pub_key.hex.clone(), }, }; - return Ok(Some(tx_vout)) + return Ok(Some(tx_vout)); } } services.transaction.vout_by_id.get(&(vin.txid, vin.vout)) @@ -186,7 +186,13 @@ fn index_script_activity(services: &Arc, block: &Block) - let hid = as_sha256(vout.script.hex.clone()); // as key let script_activity = ScriptActivity { - id: format!("{}{}{}{}", hex::encode(block.height.to_be_bytes()), ScriptActivityTypeHex::Vin, vin.txid, hex::encode(vin.vout.to_be_bytes())), + id: format!( + "{}{}{}{}", + hex::encode(block.height.to_be_bytes()), + ScriptActivityTypeHex::Vin, + vin.txid, + hex::encode(vin.vout.to_be_bytes()) + ), hid: hid.clone(), r#type: ScriptActivityType::Vin, type_hex: ScriptActivityTypeHex::Vin, @@ -209,7 +215,13 @@ fn index_script_activity(services: &Arc, block: &Block) - value: format!("{:.8}", vout.value.parse::()?), token_id: vout.token_id, }; - let id = (hid, block.height, ScriptActivityTypeHex::Vin, vin.txid, vin.vout); + let id = ( + hid, + block.height, + ScriptActivityTypeHex::Vin, + vin.txid, + vin.vout, + ); services.script_activity.by_id.put(&id, &script_activity)? } @@ -219,7 +231,13 @@ fn index_script_activity(services: &Arc, block: &Block) - } let hid = as_sha256(vout.script_pub_key.hex.clone()); let script_activity = ScriptActivity { - id: format!("{}{}{}{}", hex::encode(block.height.to_be_bytes()), ScriptActivityTypeHex::Vout, tx.txid, hex::encode(vout.n.to_be_bytes())), + id: format!( + "{}{}{}{}", + hex::encode(block.height.to_be_bytes()), + ScriptActivityTypeHex::Vout, + tx.txid, + hex::encode(vout.n.to_be_bytes()) + ), hid: hid.clone(), r#type: ScriptActivityType::Vout, type_hex: ScriptActivityTypeHex::Vout, @@ -242,7 +260,13 @@ fn index_script_activity(services: &Arc, block: &Block) - value: format!("{:.8}", vout.value), token_id: vout.token_id, }; - let id = (hid, block.height, ScriptActivityTypeHex::Vout, tx.txid, vout.n); + let id = ( + hid, + block.height, + ScriptActivityTypeHex::Vout, + tx.txid, + vout.n, + ); services.script_activity.by_id.put(&id, &script_activity)? } } @@ -513,7 +537,6 @@ pub fn index_block(services: &Arc, block: Block) -> Resul log_elapsed(start, "Indexed dftx"); } } - } log_elapsed(start, "Indexed block"); diff --git a/lib/ain-ocean/src/lib.rs b/lib/ain-ocean/src/lib.rs index ae943322749..4667b4b633f 100644 --- a/lib/ain-ocean/src/lib.rs +++ b/lib/ain-ocean/src/lib.rs @@ -23,10 +23,10 @@ use repository::{ OracleRepository, OracleTokenCurrencyKeyRepository, OracleTokenCurrencyRepository, PoolPairByHeightRepository, PoolPairRepository, PoolSwapAggregatedKeyRepository, PoolSwapAggregatedRepository, PoolSwapRepository, PriceTickerKeyRepository, - PriceTickerRepository, RawBlockRepository, - ScriptActivityRepository, ScriptAggregationRepository, ScriptUnspentKeyRepository, - ScriptUnspentRepository, TransactionByBlockHashRepository, TransactionRepository, - TransactionVinRepository, TransactionVoutRepository, TxResultRepository, + PriceTickerRepository, RawBlockRepository, ScriptActivityRepository, + ScriptAggregationRepository, ScriptUnspentKeyRepository, ScriptUnspentRepository, + TransactionByBlockHashRepository, TransactionRepository, TransactionVinRepository, + TransactionVoutRepository, TxResultRepository, }; use serde::Serialize; pub mod api;