@Override public Serialiser<String, byte[]> getSerialisation() { return new StringSerialiser(); }
@Override public Serialiser<Set<? extends Object>, byte[]> getSerialisation() { SetSerialiser serialiser = new SetSerialiser(); serialiser.setObjectSerialiser(new StringSerialiser()); return serialiser; }
@Test public void shouldMatchHistoricalSerialisation() throws IOException, GafferCheckedException { final String fromDisk = IOUtils.readLines(StreamUtil.openStream(getClass(), path)) .stream() .collect(Collectors.joining("\n")); final MultiSerialiser multiSerialiser = new MultiSerialiser() .addSerialiser((byte) 0, new StringSerialiser(), String.class) .addSerialiser((byte) 1, new CompactRawLongSerialiser(), Long.class) .addSerialiser((byte) 2, new CompactRawIntegerSerialiser(), Integer.class); final String fromCode = new String(JSONSerialiser.serialise(multiSerialiser, true)); assertEquals(fromDisk, fromCode); }
@Test public void shouldSerialiseAndDeserialiseValueWithSerialiser() throws IOException { // Given final String string = "Some value"; final StringSerialiser serialiser = new StringSerialiser(); // When final byte[] serialisedBytes = LengthValueBytesSerialiserUtil.serialise(serialiser, string); final String deserialisedString = LengthValueBytesSerialiserUtil.deserialise(serialiser, serialisedBytes); // Then assertEquals(string, deserialisedString); }
@Override public Serialiser<Map<? extends Object, ? extends Object>, byte[]> getSerialisation() { MapSerialiser serialiser = new MapSerialiser(); serialiser.setKeySerialiser(new StringSerialiser()); serialiser.setValueSerialiser(new LongSerialiser()); return serialiser; }
@Test public void shouldSerialiseAndDeserialiseValuesWithSerialiser() throws IOException { // Given final ToBytesSerialiser<String> stringSerialiser = new StringSerialiser(); final String string1 = "Some value 1"; final String string2 = "Some value 2"; final String string3 = "Some value 3"; // When - serialise byte[] serialisedBytes; try (final ByteArrayOutputStream byteStream = new ByteArrayOutputStream()) { LengthValueBytesSerialiserUtil.serialise(stringSerialiser, string1, byteStream); LengthValueBytesSerialiserUtil.serialise(stringSerialiser, string2, byteStream); LengthValueBytesSerialiserUtil.serialise(stringSerialiser, string3, byteStream); serialisedBytes = byteStream.toByteArray(); } // When - deserialise int[] delimiter = {0}; final String deserialisedString1 = LengthValueBytesSerialiserUtil.deserialise(stringSerialiser, serialisedBytes, delimiter); final String deserialisedString2 = LengthValueBytesSerialiserUtil.deserialise(stringSerialiser, serialisedBytes, delimiter); final String deserialisedString3 = LengthValueBytesSerialiserUtil.deserialise(stringSerialiser, serialisedBytes, delimiter); // Then assertEquals(string1, deserialisedString1); assertEquals(string2, deserialisedString2); assertEquals(string3, deserialisedString3); }