/**
*
*/
package pt.ist.expenditureTrackingSystem.util;
import java.io.Serializable;
/**
* @author - Shezad Anavarali (shezad@ist.utl.pt)
*
*/
public class GenericPair<T, V> implements Serializable {
private T left;
private V right;
public GenericPair(T left, V right) {
super();
this.left = left;
this.right = right;
}
public T getLeft() {
return left;
}
public void setLeft(T left) {
this.left = left;
}
public V getRight() {
return right;
}
public void setRight(V right) {
this.right = right;
}
@Override
public boolean equals(Object o) {
if (o instanceof GenericPair) {
T oLeft = ((GenericPair<T, V>) o).getLeft();
V oRight = ((GenericPair<T, V>) o).getRight();
return ((getLeft() == null && oLeft == null) || getLeft().equals(oLeft))
&& ((getRight() == null && oRight == null) || getRight().equals(oRight));
}
return false;
}
@Override
public int hashCode() {
final String hashBase = String.valueOf(getLeft()) + String.valueOf(getRight());
return hashBase.hashCode();
}
}