From bfc9932b17f4f482ded8b4b227d4810f2c8d893d Mon Sep 17 00:00:00 2001 From: "mergify[bot]" <37929162+mergify[bot]@users.noreply.github.com> Date: Fri, 11 Dec 2020 02:03:18 +0000 Subject: [PATCH] Add get_minimum_balance_for_rent_excemption to Client (#14048) (#14052) (cherry picked from commit 7abd8084b668764aa4079ef6748c229e9b9e054d) Co-authored-by: Jack May --- client/src/thin_client.rs | 6 ++++++ runtime/src/bank_client.rs | 4 ++++ sdk/src/client.rs | 2 ++ 3 files changed, 12 insertions(+) diff --git a/client/src/thin_client.rs b/client/src/thin_client.rs index c99a8747b5..8cae5d414e 100644 --- a/client/src/thin_client.rs +++ b/client/src/thin_client.rs @@ -399,6 +399,12 @@ impl SyncClient for ThinClient { .map(|r| r.value) } + fn get_minimum_balance_for_rent_exemption(&self, data_len: usize) -> TransportResult { + self.rpc_client() + .get_minimum_balance_for_rent_exemption(data_len) + .map_err(|e| e.into()) + } + fn get_recent_blockhash(&self) -> TransportResult<(Hash, FeeCalculator)> { let (blockhash, fee_calculator, _last_valid_slot) = self.get_recent_blockhash_with_commitment(CommitmentConfig::default())?; diff --git a/runtime/src/bank_client.rs b/runtime/src/bank_client.rs index a83590e869..4becf5c975 100644 --- a/runtime/src/bank_client.rs +++ b/runtime/src/bank_client.rs @@ -140,6 +140,10 @@ impl SyncClient for BankClient { Ok(self.bank.get_balance(pubkey)) } + fn get_minimum_balance_for_rent_exemption(&self, data_len: usize) -> Result { + Ok(self.bank.get_minimum_balance_for_rent_exemption(data_len)) + } + fn get_recent_blockhash(&self) -> Result<(Hash, FeeCalculator)> { Ok(self.bank.last_blockhash_with_fee_calculator()) } diff --git a/sdk/src/client.rs b/sdk/src/client.rs index 20d3c1719a..15e3cfa7ae 100644 --- a/sdk/src/client.rs +++ b/sdk/src/client.rs @@ -78,6 +78,8 @@ pub trait SyncClient { commitment_config: CommitmentConfig, ) -> Result; + fn get_minimum_balance_for_rent_exemption(&self, data_len: usize) -> Result; + /// Get recent blockhash fn get_recent_blockhash(&self) -> Result<(Hash, FeeCalculator)>;