Tuple.java
// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License.
package com.microsoft.azure.spring.cloud.context.core.util;
import java.util.Objects;
public final class Tuple<T, U> {
private final T first;
private final U second;
private Tuple(T first, U second) {
this.first = first;
this.second = second;
}
public static <T, U> Tuple<T, U> of(T first, U second) {
return new Tuple<>(first, second);
}
public T getFirst() {
return first;
}
public U getSecond() {
return second;
}
@Override
public boolean equals(Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
Tuple<?, ?> tuple = (Tuple<?, ?>) o;
return Objects.equals(first, tuple.first) && Objects.equals(second, tuple.second);
}
@Override
public int hashCode() {
return Objects.hash(first, second);
}
}