//JAVA TO C# CONVERTER WARNING: Method 'throws' clauses are not available in C#: //ORIGINAL LINE: private <T extends org.neo4j.bolt.messaging.ResponseMessage> T serializeAndDeserialize(T msg) throws java.io.IOException private T SerializeAndDeserialize <T>(T msg) where T : Org.Neo4j.Bolt.messaging.ResponseMessage { RecordingByteChannel channel = new RecordingByteChannel(); BoltResponseMessageReader reader = new BoltResponseMessageReader(_neo4jPack.newUnpacker((new BufferedChannelInput(16)).reset(channel))); BufferedChannelOutput output = new BufferedChannelOutput(channel); BoltResponseMessageWriterV1 writer = new BoltResponseMessageWriterV1(_neo4jPack.newPacker, output, NullLogService.Instance); writer.Write(msg); writer.Flush(); channel.Eof(); return(Unpack(reader, channel)); }
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes: //ORIGINAL LINE: @SuppressWarnings("unchecked") private <T extends org.neo4j.bolt.messaging.ResponseMessage> T unpack(BoltResponseMessageReader reader, RecordingByteChannel channel) private T Unpack <T>(BoltResponseMessageReader reader, RecordingByteChannel channel) where T : Org.Neo4j.Bolt.messaging.ResponseMessage { // Unpack string serialized = HexPrinter.hex(channel.Bytes); BoltResponseMessageRecorder messages = new BoltResponseMessageRecorder(); try { reader.Read(messages); } catch (Exception e) { throw new AssertionError("Failed to unpack message, wire data was:\n" + serialized + "[" + channel.Bytes.Length + "b]", e); } return(( T )messages.AsList()[0]); }