package main.java.utils.cartesianindex;
import java.util.List;
public class CartesianLeaf implements CartesianIndex {
private static final long serialVersionUID = 596686272185221264L;
private Long currentValue;
public CartesianLeaf(final Long value) {
currentValue = value;
}
@Override
public boolean isLeafValue() {
return true;
}
@Override
public Long getValue() {
return currentValue;
}
@Override
public void setValue(final long value) {
currentValue = value;
}
@Override
public List<CartesianIndex> getNodes() {
throw new UnsupportedOperationException("This is a Cartesian value, not nodes in here.");
}
@Override
public void setNewNodes(final List<CartesianIndex> newNodes) {
throw new UnsupportedOperationException("This is a Cartesian value, not nodes in here.");
}
@Override
public int hashCode() {
return currentValue.intValue();
}
@Override
public boolean equals(final Object node) {
if (node instanceof CartesianLeaf) {
return ((CartesianLeaf) node).getValue().equals(currentValue);
}
return false;
}
@Override
public String toString() {
return String.valueOf(hashCode());
}
}