Description
Right now the RPC extensions and overrides are spread across multiple crates:
flashblocks-rpc: Modifications to existing RPC's in the eth namespace to make them aware of the Flashblocks state
metering: New RPC's in the base namespace that accept a bundle and return information around the cost to execute
transaction-status: New RPC's in the base namespace to retrieve the status around whether a transaction is in the mempool
We should combine all the RPC extensions/modifications into a single crate rpc and end up with:
crates/
flashblocks/ # responsible for managing the state
rpc/ # combines all the extensions into one place
src/
base/ # dir per namespace
transaction_status_rpc.rs # server/file per group of RPCs
metering_rpc.rs
subscrib_rpc.rs
traits.rs # all traits and types in top level files
types.rs
eth/
traits.rs
flashblocks.rs
lib.rs
tests/
runner/
extentions/
rpc.rs # wires up the servers/traits
Description
Right now the RPC extensions and overrides are spread across multiple crates:
flashblocks-rpc: Modifications to existing RPC's in the eth namespace to make them aware of the Flashblocks statemetering: New RPC's in the base namespace that accept a bundle and return information around the cost to executetransaction-status: New RPC's in the base namespace to retrieve the status around whether a transaction is in the mempoolWe should combine all the RPC extensions/modifications into a single crate
rpcand end up with: