@Test public void testFlipSignBit() { Assert.assertEquals(0L, MathUtils.flipSignBit(Long.MIN_VALUE)); Assert.assertEquals(Long.MIN_VALUE, MathUtils.flipSignBit(0L)); Assert.assertEquals(-1L, MathUtils.flipSignBit(Long.MAX_VALUE)); Assert.assertEquals(Long.MAX_VALUE, MathUtils.flipSignBit(-1L)); Assert.assertEquals(42L | Long.MIN_VALUE, MathUtils.flipSignBit(42L)); Assert.assertEquals(-42L & Long.MAX_VALUE, MathUtils.flipSignBit(-42L)); } }
@Override public TimerHeapInternalTimer<K, N> deserialize(DataInputView source) throws IOException { long timestamp = MathUtils.flipSignBit(source.readLong()); K key = keySerializer.deserialize(source); N namespace = namespaceSerializer.deserialize(source); return new TimerHeapInternalTimer<>(timestamp, key, namespace); }
@Override public void serialize(TimerHeapInternalTimer<K, N> record, DataOutputView target) throws IOException { target.writeLong(MathUtils.flipSignBit(record.getTimestamp())); keySerializer.serialize(record.getKey(), target); namespaceSerializer.serialize(record.getNamespace(), target); }
@Override public TimerHeapInternalTimer<K, N> deserialize(DataInputView source) throws IOException { long timestamp = MathUtils.flipSignBit(source.readLong()); K key = keySerializer.deserialize(source); N namespace = namespaceSerializer.deserialize(source); return new TimerHeapInternalTimer<>(timestamp, key, namespace); }
@Override public TimerHeapInternalTimer<K, N> deserialize(DataInputView source) throws IOException { long timestamp = MathUtils.flipSignBit(source.readLong()); K key = keySerializer.deserialize(source); N namespace = namespaceSerializer.deserialize(source); return new TimerHeapInternalTimer<>(timestamp, key, namespace); }
@Override public void serialize(TimerHeapInternalTimer<K, N> record, DataOutputView target) throws IOException { target.writeLong(MathUtils.flipSignBit(record.getTimestamp())); keySerializer.serialize(record.getKey(), target); namespaceSerializer.serialize(record.getNamespace(), target); }
@Override public void serialize(TimerHeapInternalTimer<K, N> record, DataOutputView target) throws IOException { target.writeLong(MathUtils.flipSignBit(record.getTimestamp())); keySerializer.serialize(record.getKey(), target); namespaceSerializer.serialize(record.getNamespace(), target); }