Skip to content

Instantly share code, notes, and snippets.

@softarn
Last active May 13, 2018 13:02
Show Gist options
  • Save softarn/52f4a899f0627f5b1f059095545ec09a to your computer and use it in GitHub Desktop.
Save softarn/52f4a899f0627f5b1f059095545ec09a to your computer and use it in GitHub Desktop.
Blog - Optional.orElse
public T orElse(T other)
public T orElseGet(Supplier<? extends T> other)
public Optional<Inventory> findInventoryByUser(User user)
public Inventory getInventory(User user) {
Optional inventory = findInventoryByUser(User user);
if (inventory.isPresent()) {
return inventory.get();
} else {
throw new NotFoundException();
}
}
public Inventory getInventory(User user) {
return findInventoryByUser(userUuid)
.orElseGet(() -> createInventory(user));
}
public Inventory getInventory(User user) {
return findInventoryByUser(User user)
.orElseThrow(() -> new NotFoundException());
}
public Inventory getInventory(User user) {
return findInventoryByUser(userUuid)
.orElse(createInventory(user));
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment