Skip to content
Snippets Groups Projects
BalanceServiceImpl.java 902 B
Newer Older
unknown's avatar
unknown committed
package ufrn.imd.service.impl;

import lombok.RequiredArgsConstructor;
unknown's avatar
unknown committed
import lombok.extern.java.Log;
unknown's avatar
unknown committed
import ufrn.imd.domain.Account;
import ufrn.imd.domain.Client;
import ufrn.imd.repository.Repository;
import ufrn.imd.service.Service;
unknown's avatar
unknown committed

import java.rmi.RemoteException;
import java.util.Optional;

unknown's avatar
unknown committed
@Log
@RequiredArgsConstructor
public class BalanceServiceImpl implements Service {
unknown's avatar
unknown committed


    private final Repository<Client> clientRepository;

    public void balance(Optional<Client> clientOptional) throws RemoteException {
        Client user = clientOptional
                .orElseThrow(() -> new RuntimeException("NULL USER"));
        Client client = clientRepository.find(user.getId())
                .orElseThrow(() -> new RuntimeException("Invalid user!"));
        Account account = client.getAccount();
unknown's avatar
unknown committed
        log.info(String.format("Account Balance: R$ %f", account.getBalance()));
unknown's avatar
unknown committed

    }
}