public void checkWithdrawal(BigDecimal amountToWithdraw) throws WalletIsBlockedException, InsufficientWalletAmountException {
if (status == WalletStatus.BLOCKED) {
throw new WalletIsBlockedException(id, "Wallet " + id + " is blocked.");
}
if (amount.compareTo(amountToWithdraw) < 0) {
throw new InsufficientWalletAmountException(id, amountToWithdraw, amount, "Insufficient funds (" +
MoneyFormatter.format(amount) + " < " + MoneyFormatter.format(amountToWithdraw) + ")");
}
}