Mercurial > hg > Database > Christie-sharp
view datagear/command/PutCommand.cs @ 20:3aaa77e12493
update
author | riono <e165729@ie.u-ryukyu.ac.jp> |
---|---|
date | Tue, 01 Dec 2020 20:23:09 +0900 |
parents | 7352793b5dbe |
children | 58858657a0e0 |
line wrap: on
line source
using System; using System.IO; using Christie_net.datagear.dg; using MessagePack; namespace Christie_net.datagear.command { public class PutCommand : Command{ public PutCommand(CommandBuilder cb) : base(cb) { this.clazz = dg.GetClazz(); } public override void Execute() { } // commandとdata, dataSizeをMemoryStreamに変換する public override MemoryStream Convert() { MemoryStream stream = new MemoryStream(); try { byte[] command = MessagePackSerializer.Serialize(CreateRemoteMessage()); byte[] data = new MessagePackDataGear<object>(dg.GetData()).GetMessagePack(); byte[] dataSize = MessagePackSerializer.Serialize(data.Length); stream.Write(command, 0, command.Length); stream.Write(data, 0, data.Length); stream.Write(dataSize, 0, dataSize.Length); stream.Position = 0; } catch (IOException e) { Console.WriteLine(e.StackTrace); } return stream; } } }