Newer
Older
import ufrn.imd.domain.Client;
import ufrn.imd.repository.Repository;
import ufrn.imd.service.Service;
import java.rmi.RemoteException;
import java.util.Optional;
@RequiredArgsConstructor
public class DepositServiceImpl implements Service {
private final Repository<Client> repository;
public void deposit(Double value, Optional<Client> clientOptional) throws RemoteException, RuntimeException {
Client user = clientOptional
.orElseThrow(() -> new RuntimeException("Null User!"));
Client client = repository.find(user.getId())
.orElseThrow(() -> new RuntimeException("Invalid user!"));
Account account = client.getAccount();
account.setBalance(account.getBalance() + value);
log.info(String.format("Deposit concluded!"));
log.info(String.format("Total: %.2f", account.getBalance()));