package com.github.obourgain.elasticsearch.http.handler.document.multiget;
import static java.util.Objects.requireNonNull;
public class Either<L, R> {
private final L left;
private final R right;
public Either(L left, R right) {
this.left = left;
this.right = right;
}
public static <L, R> Either<L, R> left(L left) {
return new Either<>(requireNonNull(left), null);
}
public static <L, R> Either<L, R> right(R right) {
return new Either<>(null, requireNonNull(right));
}
public boolean isLeft() {
return left != null;
}
public boolean isRight() {
return right != null;
}
public L left() {
return left;
}
public R right() {
return right;
}
// this may get a fold method, but i am not yet sure how to make it really useful
}