diff --git a/Cargo.lock b/Cargo.lock index 00ae759..8f56826 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -3824,8 +3824,10 @@ dependencies = [ "anyhow", "env_logger", "log", + "sequencer_core", "serde", "serde_json", + "storage", ] [[package]] diff --git a/node_core/src/sequencer_client/json.rs b/node_core/src/sequencer_client/json.rs index 7683ea8..93a3231 100644 --- a/node_core/src/sequencer_client/json.rs +++ b/node_core/src/sequencer_client/json.rs @@ -1,16 +1,9 @@ use rpc_primitives::errors::RpcError; use serde::{Deserialize, Serialize}; -use storage::{block::Block, transaction::Transaction}; +use storage::transaction::Transaction; //Requests -#[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: Transaction, @@ -18,37 +11,14 @@ pub struct SendTxRequest { pub tx_roots: [[u8; 32]; 3], } -#[derive(Serialize, Deserialize, Debug)] -pub struct GetBlockDataRequest { - pub block_id: u64, -} - -#[derive(Serialize, Deserialize, Debug)] -pub struct GetGenesisIdRequest {} - //Responses -#[derive(Serialize, Deserialize, Debug)] -pub struct RegisterAccountResponse { - pub status: String, -} - #[derive(Serialize, Deserialize, Debug)] pub struct SendTxResponse { pub status: String, pub additional_data: Option, } -#[derive(Serialize, Deserialize, Debug)] -pub struct GetBlockDataResponse { - pub block: Block, -} - -#[derive(Serialize, Deserialize, Debug)] -pub struct GetGenesisIdResponse { - pub genesis_id: u64, -} - //General #[derive(Debug, Clone, Serialize)] diff --git a/node_core/src/sequencer_client/mod.rs b/node_core/src/sequencer_client/mod.rs index 6a65b9e..60f9d9d 100644 --- a/node_core/src/sequencer_client/mod.rs +++ b/node_core/src/sequencer_client/mod.rs @@ -1,12 +1,14 @@ use accounts::account_core::Account; use anyhow::Result; use json::{ - GetBlockDataRequest, GetBlockDataResponse, GetGenesisIdRequest, GetGenesisIdResponse, - RegisterAccountRequest, RegisterAccountResponse, SendTxRequest, SendTxResponse, - SequencerRpcError, SequencerRpcRequest, SequencerRpcResponse, + SendTxRequest, SendTxResponse, SequencerRpcError, SequencerRpcRequest, SequencerRpcResponse, }; use k256::elliptic_curve::group::GroupEncoding; use reqwest::Client; +use rpc_primitives::requests::{ + GetBlockDataRequest, GetBlockDataResponse, GetGenesisIdRequest, GetGenesisIdResponse, + RegisterAccountRequest, RegisterAccountResponse, +}; use serde_json::Value; use storage::transaction::Transaction; diff --git a/node_rpc/src/process.rs b/node_rpc/src/process.rs index 38b5843..b174619 100644 --- a/node_rpc/src/process.rs +++ b/node_rpc/src/process.rs @@ -11,16 +11,20 @@ use rpc_primitives::{ }; use storage::transaction::ActionData; +use rpc_primitives::requests::{ + GetBlockDataRequest, GetBlockDataResponse, GetLastBlockRequest, GetLastBlockResponse, + RegisterAccountRequest, RegisterAccountResponse, +}; + use crate::types::rpc_structs::{ ExecuteScenarioMultipleSendRequest, ExecuteScenarioMultipleSendResponse, ExecuteScenarioSplitRequest, ExecuteScenarioSplitResponse, ExecuteSubscenarioRequest, - ExecuteSubscenarioResponse, GetBlockDataRequest, GetBlockDataResponse, GetLastBlockRequest, - GetLastBlockResponse, RegisterAccountRequest, RegisterAccountResponse, - ShowAccountPublicBalanceRequest, ShowAccountPublicBalanceResponse, ShowAccountUTXORequest, - ShowAccountUTXOResponse, ShowTransactionRequest, ShowTransactionResponse, - UTXOShortEssentialStruct, WriteDepositPublicBalanceRequest, WriteDepositPublicBalanceResponse, - WriteMintPrivateUTXOMultipleAssetsRequest, WriteMintPrivateUTXOMultipleAssetsResponse, - WriteMintPrivateUTXORequest, WriteMintPrivateUTXOResponse, WriteSendDeshieldedBalanceRequest, + ExecuteSubscenarioResponse, ShowAccountPublicBalanceRequest, ShowAccountPublicBalanceResponse, + ShowAccountUTXORequest, ShowAccountUTXOResponse, ShowTransactionRequest, + ShowTransactionResponse, UTXOShortEssentialStruct, WriteDepositPublicBalanceRequest, + WriteDepositPublicBalanceResponse, WriteMintPrivateUTXOMultipleAssetsRequest, + WriteMintPrivateUTXOMultipleAssetsResponse, WriteMintPrivateUTXORequest, + WriteMintPrivateUTXOResponse, WriteSendDeshieldedBalanceRequest, WriteSendDeshieldedUTXOResponse, WriteSendPrivateUTXORequest, WriteSendPrivateUTXOResponse, WriteSendShieldedUTXORequest, WriteSendShieldedUTXOResponse, WriteSendSplitUTXOResponse, WriteSplitUTXORequest, diff --git a/node_rpc/src/types/mod.rs b/node_rpc/src/types/mod.rs index 6084ddd..4901b7f 100644 --- a/node_rpc/src/types/mod.rs +++ b/node_rpc/src/types/mod.rs @@ -1,3 +1,2 @@ pub mod err_rpc; -pub mod parse; pub mod rpc_structs; diff --git a/node_rpc/src/types/parse.rs b/node_rpc/src/types/parse.rs deleted file mode 100644 index 8b13789..0000000 --- a/node_rpc/src/types/parse.rs +++ /dev/null @@ -1 +0,0 @@ - diff --git a/node_rpc/src/types/rpc_structs.rs b/node_rpc/src/types/rpc_structs.rs index 563db03..6d7d8a3 100644 --- a/node_rpc/src/types/rpc_structs.rs +++ b/node_rpc/src/types/rpc_structs.rs @@ -4,23 +4,8 @@ use rpc_primitives::parser::parse_params; use rpc_primitives::parser::RpcRequest; use serde::{Deserialize, Serialize}; use serde_json::Value; -use storage::block::Block; -use storage::transaction::Transaction; use storage::transaction::TxKind; -#[derive(Serialize, Deserialize, Debug)] -pub struct RegisterAccountRequest {} - -#[derive(Serialize, Deserialize, Debug)] -pub struct SendTxRequest { - pub transaction: Transaction, -} - -#[derive(Serialize, Deserialize, Debug)] -pub struct GetBlockDataRequest { - pub block_id: u64, -} - #[derive(Serialize, Deserialize, Debug)] pub struct ExecuteSubscenarioRequest { pub scenario_id: u64, @@ -38,12 +23,6 @@ pub struct ExecuteScenarioMultipleSendRequest { pub number_to_send: usize, } -#[derive(Serialize, Deserialize, Debug)] -pub struct GetGenesisIdRequest {} - -#[derive(Serialize, Deserialize, Debug)] -pub struct GetLastBlockRequest {} - #[derive(Serialize, Deserialize, Debug)] pub struct ShowAccountPublicBalanceRequest { pub account_addr: String, @@ -111,14 +90,11 @@ pub struct WriteSplitUTXORequest { pub utxo_commitment: String, } -parse_request!(RegisterAccountRequest); -parse_request!(SendTxRequest); -parse_request!(GetBlockDataRequest); -parse_request!(GetGenesisIdRequest); +// parse_request!(GetGenesisIdRequest); parse_request!(ExecuteSubscenarioRequest); parse_request!(ExecuteScenarioSplitRequest); parse_request!(ExecuteScenarioMultipleSendRequest); -parse_request!(GetLastBlockRequest); +// parse_request!(GetLastBlockRequest); parse_request!(ShowAccountPublicBalanceRequest); parse_request!(ShowAccountUTXORequest); @@ -132,26 +108,6 @@ parse_request!(WriteSendShieldedUTXORequest); parse_request!(WriteSendDeshieldedBalanceRequest); parse_request!(WriteSplitUTXORequest); -#[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 ExecuteSubscenarioResponse { pub scenario_result: String, @@ -167,16 +123,6 @@ pub struct ExecuteScenarioMultipleSendResponse { pub scenario_result: String, } -#[derive(Serialize, Deserialize, Debug)] -pub struct GetGenesisIdResponse { - pub genesis_id: u64, -} - -#[derive(Serialize, Deserialize, Debug)] -pub struct GetLastBlockResponse { - pub last_block: u64, -} - #[derive(Serialize, Deserialize, Debug)] pub struct ShowAccountPublicBalanceResponse { pub addr: String, diff --git a/rpc_primitives/Cargo.toml b/rpc_primitives/Cargo.toml index f015302..15bbfd1 100644 --- a/rpc_primitives/Cargo.toml +++ b/rpc_primitives/Cargo.toml @@ -9,3 +9,9 @@ serde_json.workspace = true env_logger.workspace = true log.workspace = true serde.workspace = true + +[dependencies.storage] +path = "../storage" + +[dependencies.sequencer_core] +path = "../sequencer_core" diff --git a/rpc_primitives/src/lib.rs b/rpc_primitives/src/lib.rs index 5e3d870..ffa8564 100644 --- a/rpc_primitives/src/lib.rs +++ b/rpc_primitives/src/lib.rs @@ -5,6 +5,7 @@ use serde::{Deserialize, Serialize}; pub mod errors; pub mod message; pub mod parser; +pub mod requests; #[derive(Serialize, Deserialize, Clone, Copy, Debug)] pub struct RpcPollingConfig { diff --git a/sequencer_rpc/src/types/rpc_structs.rs b/rpc_primitives/src/requests.rs similarity index 91% rename from sequencer_rpc/src/types/rpc_structs.rs rename to rpc_primitives/src/requests.rs index 1c95fb8..b5f0beb 100644 --- a/sequencer_rpc/src/types/rpc_structs.rs +++ b/rpc_primitives/src/requests.rs @@ -1,7 +1,7 @@ -use rpc_primitives::errors::RpcParseError; -use rpc_primitives::parse_request; -use rpc_primitives::parser::parse_params; -use rpc_primitives::parser::RpcRequest; +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; diff --git a/sequencer_rpc/src/process.rs b/sequencer_rpc/src/process.rs index 294878e..b89960c 100644 --- a/sequencer_rpc/src/process.rs +++ b/sequencer_rpc/src/process.rs @@ -8,7 +8,7 @@ use rpc_primitives::{ parser::RpcRequest, }; -use crate::types::rpc_structs::{ +use rpc_primitives::requests::{ GetBlockDataRequest, GetBlockDataResponse, GetGenesisIdRequest, GetGenesisIdResponse, GetLastBlockRequest, GetLastBlockResponse, HelloRequest, HelloResponse, RegisterAccountRequest, RegisterAccountResponse, SendTxRequest, SendTxResponse, diff --git a/sequencer_rpc/src/types/mod.rs b/sequencer_rpc/src/types/mod.rs index 6084ddd..a4c0397 100644 --- a/sequencer_rpc/src/types/mod.rs +++ b/sequencer_rpc/src/types/mod.rs @@ -1,3 +1,2 @@ pub mod err_rpc; pub mod parse; -pub mod rpc_structs;