1
resposta

ReceiverNotAuthenticatedException

Olá aqui a resposta do meu desafio:

class ReceiverNotAuthenticatedException {
  String idReceiver;
  static const report = "ReceiverNotAuthenticatedException";

  ReceiverNotAuthenticatedException({required this.idReceiver});

  @override
  String toString() {
    // TODO: implement toString
    return "$report\nID Receiver $idReceiver não está autenticado";
  }
}
class BankController {
  final Map<String, Account> _database = {};

  addAccount({required String id, required Account account}) {
    _database[id] = account;
  }

  bool makeTransfer(
      {required String idSender,
        required String idReceiver,
        required double amount}) {

    if(!accountReceiver.isAuthenticated) {
      throw ReceiverNotAuthenticatedException(idReceiver: idReceiver);
    }

    // Se tudo estiver certo, efetivar transação
    accountSender.balance -= amount;
    accountReceiver.balance += amount;

    return true;
  }
}
void main() {
  // Criando o banco
  BankController bankController = BankController();

  // Adicionando contas
  bankController.addAccount(
      id: "Ricarth",
      account:
      Account(name: "Ricarth Lima", balance: 400, isAuthenticated: false));

  bankController.addAccount(
      id: "Kako",
      account:
      Account(name: "Caio Couto", balance: 600, isAuthenticated: true));

  try {
    // Fazendo transferência
    bool result = bankController.makeTransfer(
        idSender: "Kako", idReceiver: "Ricarth", amount: 300);

    // Observando resultado
    if(result) {
      print("Transação concluida com sucesso!");
    }

  } on ReceiverNotAuthenticatedException catch(e) {
    print(e);
  } on Exception {
    print("Algo deu errado!");
  }
}

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

1 resposta

Olá João! Tudo bem?

Parabéns por realizar a atividade proposta, você fez um ótimo trabalho!

Obrigada por compartilhar seu resultado com a comunidade Alura. Ficamos muito felizes em ver sua dedicação!

Conte com o apoio do fórum em sua jornada :)

Um abraço e bons estudos!