@Override protected long readLong(Decoder decoder) throws IOException { return decoder.readLong(); }
@Override protected long readLong(Decoder decoder) throws IOException { return decoder.readLong(); }
/** * Reverse of {@link #encodePayload(StreamEvent)}. * * @param payload The byte array containing the queue payload. * @return A {@link StreamEvent} reconstructed from payload. */ public StreamEvent decodePayload(byte[] payload) { ByteBuffer buffer = ByteBuffer.wrap(payload); SchemaHash schemaHash = new SchemaHash(buffer); Preconditions.checkArgument(schemaHash.equals(STREAM_EVENT_SCHEMA.getSchemaHash()), "Schema from payload not matching StreamEvent schema."); Decoder decoder = new BinaryDecoder(new ByteBufferInputStream(buffer)); try { StreamEventData data = StreamEventDataCodec.decode(decoder); // Read the timestamp long timestamp = decoder.readLong(); return new StreamEvent(data, timestamp); } catch (IOException e) { // It should never happens, otherwise something very wrong. throw Throwables.propagate(e); } } }
return decoder.readInt(); case LONG: return decoder.readLong(); case FLOAT: return decoder.readFloat();
return decoder.readInt(); case LONG: return decoder.readLong(); case FLOAT: return decoder.readFloat();
break; case LONG: decoder.readLong(); break; case FLOAT:
break; case LONG: decoder.readLong(); break; case FLOAT:
Assert.assertEquals(0, decoder.readLong()); encoder.writeLong(-20); Assert.assertEquals(-20, decoder.readLong()); encoder.writeLong(30000); Assert.assertEquals(30000, decoder.readLong()); encoder.writeLong(-600000); Assert.assertEquals(-600000, decoder.readLong()); encoder.writeLong(Integer.MAX_VALUE); Assert.assertEquals(Integer.MAX_VALUE, decoder.readLong()); encoder.writeLong(Integer.MIN_VALUE); Assert.assertEquals(Integer.MIN_VALUE, decoder.readLong()); encoder.writeLong(Long.MAX_VALUE); Assert.assertEquals(Long.MAX_VALUE, decoder.readLong()); encoder.writeLong(Long.MIN_VALUE); Assert.assertEquals(Long.MIN_VALUE, decoder.readLong());