parent
1cd1988207
commit
b6083ca107
|
@ -1655,7 +1655,7 @@ pub fn process_command(config: &CliConfig) -> ProcessResult {
|
||||||
seed,
|
seed,
|
||||||
program_id,
|
program_id,
|
||||||
} => process_create_address_with_seed(config, from_pubkey.as_ref(), &seed, &program_id),
|
} => process_create_address_with_seed(config, from_pubkey.as_ref(), &seed, &program_id),
|
||||||
CliCommand::Fees => process_fees(&rpc_client),
|
CliCommand::Fees => process_fees(&rpc_client, config),
|
||||||
CliCommand::GetBlockTime { slot } => process_get_block_time(&rpc_client, config, *slot),
|
CliCommand::GetBlockTime { slot } => process_get_block_time(&rpc_client, config, *slot),
|
||||||
CliCommand::GetGenesisHash => process_get_genesis_hash(&rpc_client),
|
CliCommand::GetGenesisHash => process_get_genesis_hash(&rpc_client),
|
||||||
CliCommand::GetEpochInfo { commitment_config } => {
|
CliCommand::GetEpochInfo { commitment_config } => {
|
||||||
|
|
|
@ -900,6 +900,7 @@ impl fmt::Display for CliSignOnlyData {
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Serialize, Deserialize)]
|
#[derive(Serialize, Deserialize)]
|
||||||
|
#[serde(rename_all = "camelCase")]
|
||||||
pub struct CliSignature {
|
pub struct CliSignature {
|
||||||
pub signature: String,
|
pub signature: String,
|
||||||
}
|
}
|
||||||
|
@ -913,6 +914,7 @@ impl fmt::Display for CliSignature {
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Serialize, Deserialize)]
|
#[derive(Serialize, Deserialize)]
|
||||||
|
#[serde(rename_all = "camelCase")]
|
||||||
pub struct CliAccountBalances {
|
pub struct CliAccountBalances {
|
||||||
pub accounts: Vec<RpcAccountBalance>,
|
pub accounts: Vec<RpcAccountBalance>,
|
||||||
}
|
}
|
||||||
|
@ -937,6 +939,7 @@ impl fmt::Display for CliAccountBalances {
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Serialize, Deserialize)]
|
#[derive(Serialize, Deserialize)]
|
||||||
|
#[serde(rename_all = "camelCase")]
|
||||||
pub struct CliSupply {
|
pub struct CliSupply {
|
||||||
pub total: u64,
|
pub total: u64,
|
||||||
pub circulating: u64,
|
pub circulating: u64,
|
||||||
|
@ -981,3 +984,25 @@ impl fmt::Display for CliSupply {
|
||||||
Ok(())
|
Ok(())
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[derive(Serialize, Deserialize)]
|
||||||
|
#[serde(rename_all = "camelCase")]
|
||||||
|
pub struct CliFees {
|
||||||
|
pub slot: Slot,
|
||||||
|
pub blockhash: String,
|
||||||
|
pub lamports_per_signature: u64,
|
||||||
|
pub last_valid_slot: Slot,
|
||||||
|
}
|
||||||
|
|
||||||
|
impl fmt::Display for CliFees {
|
||||||
|
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
|
||||||
|
writeln_name_value(f, "Blockhash:", &self.blockhash)?;
|
||||||
|
writeln_name_value(
|
||||||
|
f,
|
||||||
|
"Lamports per signature:",
|
||||||
|
&self.lamports_per_signature.to_string(),
|
||||||
|
)?;
|
||||||
|
writeln_name_value(f, "Last valid slot:", &self.last_valid_slot.to_string())?;
|
||||||
|
Ok(())
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -597,13 +597,16 @@ pub fn process_cluster_version(rpc_client: &RpcClient) -> ProcessResult {
|
||||||
Ok(remote_version.solana_core)
|
Ok(remote_version.solana_core)
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn process_fees(rpc_client: &RpcClient) -> ProcessResult {
|
pub fn process_fees(rpc_client: &RpcClient, config: &CliConfig) -> ProcessResult {
|
||||||
let (recent_blockhash, fee_calculator) = rpc_client.get_recent_blockhash()?;
|
let result = rpc_client.get_recent_blockhash_with_commitment(CommitmentConfig::default())?;
|
||||||
|
let (recent_blockhash, fee_calculator, last_valid_slot) = result.value;
|
||||||
Ok(format!(
|
let fees = CliFees {
|
||||||
"blockhash: {}\nlamports per signature: {}",
|
slot: result.context.slot,
|
||||||
recent_blockhash, fee_calculator.lamports_per_signature
|
blockhash: recent_blockhash.to_string(),
|
||||||
))
|
lamports_per_signature: fee_calculator.lamports_per_signature,
|
||||||
|
last_valid_slot,
|
||||||
|
};
|
||||||
|
Ok(config.output_format.formatted_string(&fees))
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn process_leader_schedule(rpc_client: &RpcClient) -> ProcessResult {
|
pub fn process_leader_schedule(rpc_client: &RpcClient) -> ProcessResult {
|
||||||
|
|
Loading…
Reference in New Issue