Add BankClient to minimize copypasta
This commit is contained in:
19
runtime/src/bank_client.rs
Normal file
19
runtime/src/bank_client.rs
Normal file
@@ -0,0 +1,19 @@
|
||||
use crate::bank::Bank;
|
||||
use solana_sdk::signature::Keypair;
|
||||
use solana_sdk::transaction::{Transaction, TransactionError};
|
||||
|
||||
pub struct BankClient<'a> {
|
||||
bank: &'a Bank,
|
||||
keypair: Keypair,
|
||||
}
|
||||
|
||||
impl<'a> BankClient<'a> {
|
||||
pub fn new(bank: &'a Bank, keypair: Keypair) -> Self {
|
||||
Self { bank, keypair }
|
||||
}
|
||||
|
||||
pub fn process_transaction(&self, tx: &mut Transaction) -> Result<(), TransactionError> {
|
||||
tx.sign(&[&self.keypair], self.bank.last_blockhash());
|
||||
self.bank.process_transaction(tx)
|
||||
}
|
||||
}
|
@@ -1,6 +1,7 @@
|
||||
mod accounts;
|
||||
pub mod append_vec;
|
||||
pub mod bank;
|
||||
pub mod bank_client;
|
||||
mod blockhash_queue;
|
||||
pub mod bloom;
|
||||
pub mod loader_utils;
|
||||
|
Reference in New Issue
Block a user