From 01b370d9b6e5350500add966e5afec3d01198181 Mon Sep 17 00:00:00 2001 From: Rostyslav Tyshko Date: Sun, 9 Feb 2025 11:45:16 -0500 Subject: [PATCH] create common requests module --- rpc_primitives/src/requests.rs | 73 ++++++++++++++++++++++++++++++++++ 1 file changed, 73 insertions(+) create mode 100644 rpc_primitives/src/requests.rs diff --git a/rpc_primitives/src/requests.rs b/rpc_primitives/src/requests.rs new file mode 100644 index 00000000..b5f0beb5 --- /dev/null +++ b/rpc_primitives/src/requests.rs @@ -0,0 +1,73 @@ +use crate::errors::RpcParseError; +use crate::parse_request; +use crate::parser::parse_params; +use crate::parser::RpcRequest; +use sequencer_core::transaction_mempool::TransactionMempool; +use serde::{Deserialize, Serialize}; +use serde_json::Value; +use storage::block::Block; + +#[derive(Serialize, Deserialize, Debug)] +pub struct HelloRequest {} + +#[derive(Serialize, Deserialize, Debug)] +pub struct RegisterAccountRequest { + pub nullifier_public_key: Vec, + pub viewing_public_key: Vec, + pub address: [u8; 32], +} + +#[derive(Serialize, Deserialize, Debug)] +pub struct SendTxRequest { + pub transaction: TransactionMempool, + ///Nullifier Root, UTXO Commitment Root, Pub Tx Root + pub tx_roots: [[u8; 32]; 3], +} + +#[derive(Serialize, Deserialize, Debug)] +pub struct GetBlockDataRequest { + pub block_id: u64, +} + +#[derive(Serialize, Deserialize, Debug)] +pub struct GetGenesisIdRequest {} + +#[derive(Serialize, Deserialize, Debug)] +pub struct GetLastBlockRequest {} + +parse_request!(HelloRequest); +parse_request!(RegisterAccountRequest); +parse_request!(SendTxRequest); +parse_request!(GetBlockDataRequest); +parse_request!(GetGenesisIdRequest); +parse_request!(GetLastBlockRequest); + +#[derive(Serialize, Deserialize, Debug)] +pub struct HelloResponse { + pub greeting: String, +} + +#[derive(Serialize, Deserialize, Debug)] +pub struct RegisterAccountResponse { + pub status: String, +} + +#[derive(Serialize, Deserialize, Debug)] +pub struct SendTxResponse { + pub status: String, +} + +#[derive(Serialize, Deserialize, Debug)] +pub struct GetBlockDataResponse { + pub block: Block, +} + +#[derive(Serialize, Deserialize, Debug)] +pub struct GetGenesisIdResponse { + pub genesis_id: u64, +} + +#[derive(Serialize, Deserialize, Debug)] +pub struct GetLastBlockResponse { + pub last_block: u64, +}