protected override IJsonRpcMessageFormatter CreateFormatter() { Assumes.True(Formatter == Formatters.MessagePack); MessagePackFormatter formatter = base.CreateFormatter() as MessagePackFormatter ?? new MessagePackFormatter(); formatter.SetMessagePackSerializerOptions(MessagePackSerializerOptions); return(formatter); }
protected override void InitializeFormattersAndHandlers() { var serverMessageFormatter = new MessagePackFormatter(); var clientMessageFormatter = new MessagePackFormatter(); var options = MessagePackFormatter.DefaultUserDataSerializationOptions .WithResolver(CompositeResolver.Create( new IMessagePackFormatter[] { }, new IFormatterResolver[] { StandardResolverAllowPrivate.Instance })); serverMessageFormatter.SetMessagePackSerializerOptions(options); clientMessageFormatter.SetMessagePackSerializerOptions(options); this.serverMessageHandler = new LengthHeaderMessageHandler(this.serverStream, this.serverStream, serverMessageFormatter); this.clientMessageHandler = new LengthHeaderMessageHandler(this.clientStream, this.clientStream, clientMessageFormatter); }
private static MessagePackFormatter ConfigureFormatter(MessagePackFormatter formatter) { // See https://github.com/neuecc/messagepack-csharp. formatter.SetMessagePackSerializerOptions(s_options); return(formatter); }