Return confirmation-status (#14709)

This commit is contained in:
Tyera Eulberg
2021-01-20 18:32:48 -07:00
committed by GitHub
parent 2783aee483
commit 0e87572eb0
2 changed files with 39 additions and 12 deletions

View File

@@ -298,6 +298,23 @@ impl TransactionStatus {
CommitmentLevel::Recent => true,
}
}
// Returns `confirmation_status`, or if is_none, determines the status from confirmations.
// Facilitates querying nodes on older software
pub fn confirmation_status(&self) -> TransactionConfirmationStatus {
match &self.confirmation_status {
Some(status) => status.clone(),
None => {
if self.confirmations.is_none() {
TransactionConfirmationStatus::Finalized
} else if self.confirmations.unwrap() > 0 {
TransactionConfirmationStatus::Confirmed
} else {
TransactionConfirmationStatus::Processed
}
}
}
}
}
#[derive(Clone, Debug, PartialEq, Serialize, Deserialize)]