@Override
    public boolean equals(final Object o) {
        if (this == o) {
            return true;
        }
        if (o == null || getClass() != o.getClass()) {
            return false;
        }
        final VersionedRecord<?> that = (VersionedRecord<?>) o;
        return timestamp == that.timestamp && validTo == that.validTo &&
            Objects.equals(value, that.value);
    }
Create a new {@link VersionedRecord} instance. {@code value} cannot be {@code null}.

@param value      The value
@param timestamp  The timestamp
@param validTo    The exclusive upper bound of the validity interval
streams/src/main/java/org/apache/kafka/streams/state/VersionedRecord.java