@Override
    public final boolean equals(final Object obj) {
        if (obj == null || !(obj instanceof Range<?>)) {
            return false;
        }

        final Range<?> other = (Range<?>) obj;
        final EqualsBuilder builder = new EqualsBuilder();
        builder.append(this.from, other.from);
        builder.append(this.to, other.to);
        builder.append(this.matchNull, other.matchNull);
        return builder.isEquals();
    }
@return have we an upper or lower bound or we are to just match null?
stroom-legacy/stroom-legacy-model_6_1/src/main/java/stroom/legacy/model_6_1/Range.java