@Override
    public boolean equals(Object obj) {
        if (this == obj)
            return true;
        if (obj == null)
            return false;

        if (obj instanceof AttributeFilter == false)
            return false;
        AttributeFilter other = (AttributeFilter) obj;
        if (other.getAndAllFilters() == null ^ this.getAndAllFilters() == null)
            return false;
        if (other.getAndAllFilters() != null && other.getAndAllFilters().equals(this.getAndAllFilters()) == false)
            return false;
        if (other.getOrAllFilters() == null ^ this.getOrAllFilters() == null)
            return false;
        if (other.getOrAllFilters() != null && other.getOrAllFilters().equals(this.getOrAllFilters()) == false)
            return false;
        if (other.getNotFilter() == null ^ this.getNotFilter() == null)
            return false;
        if (other.getNotFilter() != null && other.getNotFilter().equals(this.getNotFilter()) == false)
            return false;
        if (other.getEqualsTo() == null ^ this.getEqualsTo() == null)
            return false;
        if (other.getEqualsTo() != null && other.getEqualsTo().equals(this.getEqualsTo()) == false)
            return false;
        if (other.getContainsAll() == null ^ this.getContainsAll() == null)
            return false;
        if (other.getContainsAll() != null && other.getContainsAll().equals(this.getContainsAll()) == false)
            return false;
        if (other.getContainsAny() == null ^ this.getContainsAny() == null)
            return false;
        if (other.getContainsAny() != null && other.getContainsAny().equals(this.getContainsAny()) == false)
            return false;
        if (other.getGreaterThan() == null ^ this.getGreaterThan() == null)
            return false;
        if (other.getGreaterThan() != null && other.getGreaterThan().equals(this.getGreaterThan()) == false)
            return false;
        if (other.getGreaterThanOrEquals() == null ^ this.getGreaterThanOrEquals() == null)
            return false;
        if (other.getGreaterThanOrEquals() != null && other.getGreaterThanOrEquals().equals(this.getGreaterThanOrEquals()) == false)
            return false;
        if (other.getLessThan() == null ^ this.getLessThan() == null)
            return false;
        if (other.getLessThan() != null && other.getLessThan().equals(this.getLessThan()) == false)
            return false;
        if (other.getLessThanOrEquals() == null ^ this.getLessThanOrEquals() == null)
            return false;
        if (other.getLessThanOrEquals() != null && other.getLessThanOrEquals().equals(this.getLessThanOrEquals()) == false)
            return false;
        return true;
    }
Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be
redacted from this string using a placeholder value.

@return A string representation of this object.

@see java.lang.Object#toString()
aws-java-sdk-kendra/src/main/java/com/amazonaws/services/kendra/model/AttributeFilter.java