вроде видел такую функцию, но убей не вспомню, как называется:
1) проверяет 1 аргумент, если not null - возвращает это значение
2) если null - идет в 2 аргумент Callable и возвращает его значение
Optional очень похоже, но он 2 аргумент вызывает только если передан not null