Ваш пример может быть записан как:
import utils.stream.Unthrow;
class Bank{
....
public Set getActiveAccountNumbers() {
return accounts.values().stream()
.filter(a -> Unthrow.wrap(() -> a.isActive()))
.map(a -> Unthrow.wrap(() -> a.getNumber()))
.collect(Collectors.toSet());
}
....
}
Класс Unthrow можно взять здесь https://github.com/SeregaLBN/StreamUnthrower
Docker запускается внутри виртуальной машины в Windows и MacOS, и часы этой виртуальной машины могут выйти из синхронизации с ОС вашего ноутбука. Есть много решений, которые я видел, в основном одно из команд:
docker run -it --rm --privileged --pid=host debian nsenter -t 1 -m -u -n -i date -u $(date -u +%m%d%H%M%Y)
И из этого ответа есть:
docker-machine ssh default "sudo date -u $(date -u +%m%d%H%M%Y)"
Лучшее решение, которое я видел для этого, - запустить контейнер ntp в приватном режиме, чтобы он мог постоянно корректировать время на вашем докере-хосте:
docker run -d --restart unless-stopped --name ntp --privileged tutum/ntpd
Подробнее см. Репозиторий концентратора докеров: https://hub.docker.com/r/tutum/ntpd/