in athena-federation-sdk/src/main/java/com/amazonaws/athena/connector/lambda/domain/predicate/EquatableValueSet.java [463:498]
public boolean equals(Object obj)
{
if (this == obj) {
return true;
}
if (obj == null || getClass() != obj.getClass()) {
return false;
}
final EquatableValueSet other = (EquatableValueSet) obj;
if (this.getType() != null && other.getType() != null && Types.getMinorTypeForArrowType(this.getType()) == Types.getMinorTypeForArrowType(other.getType())) {
//some arrow types require checking the minor type only, like Decimal.
//We ignore any params though we may want to reconsider that in the future
}
else if (this.getType() != other.getType()) {
return false;
}
if (this.whiteList != other.whiteList) {
return false;
}
if (this.nullAllowed != other.nullAllowed) {
return false;
}
if (this.valueBlock == null && other.valueBlock != null) {
return false;
}
if (this.valueBlock != null && !this.valueBlock.equalsAsSet(other.valueBlock)) {
return false;
}
return true;
}