diff --git a/src/main/java/net/kemitix/gitdb/impl/LocalGitDBImpl.java b/src/main/java/net/kemitix/gitdb/impl/LocalGitDBImpl.java index 9164a96..140bd5f 100644 --- a/src/main/java/net/kemitix/gitdb/impl/LocalGitDBImpl.java +++ b/src/main/java/net/kemitix/gitdb/impl/LocalGitDBImpl.java @@ -112,13 +112,9 @@ final class LocalGitDBImpl implements GitDB, LocalGitDB { @Override public Result> branch(final String name) { - try { - return Result.invert(Maybe.maybe( - repository.findRef(name)) - .map(branchInit::apply)); - } catch (IOException e) { - return Result.error(e); - } + return Result.maybeThen( + Result.of(() -> Maybe.maybe(repository.findRef(name))), + refMaybe -> Result.invert(refMaybe.map(branchInit))); } }