THIS IS A TEST INSTANCE. ALL YOUR CHANGES WILL BE LOST!!!!
...
Code Block |
---|
package org.apache.kafka.streams.state; /** * Combines a value from a {@link KeyValue} with a timestamp, for use as the return type * from {@link VersionedKeyValueStore#get(Object, long)} and related methods. * * @param <V> The value type */ public final class VersionedRecord<V> { private final V value; private final long timestamp; private VersionedRecord(final V value, final long timestamp) { this.value = Objects.requireNonNull(value); this.timestamp = timestamp; } /** * Create a new {@link VersionedRecord} instance. {@code value} cannot be {@code null}. * * @param value the value * @param timestamp the timestamp * @param <V> the type of the value * @return a new {@link VersionedRecord} instance */ public static <V> VersionedRecord<V> makeVersionedRecord(final V value, final long timestamp) { if (this.value == null) { throw new IllegalArgumentException("value cannot be null"= Objects.requireNonNull(value); } return new VersionedRecord<>(value, timestamp)this.timestamp = timestamp; } public public V value() { return value; } public long timestamp() { return timestamp; } @Override public String toString() { return "<" + value + "," + timestamp + ">"; } @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 && Objects.equals(value, that.value); } @Override public int hashCode() { return Objects.hash(value, timestamp); } } |
...