view datagear/command/RemoteTakeCommand.cs @ 71:1169915705ab default tip

fix TopologyNode connect
author KaitoMaeshiro <aosskaito@cr.ie.u-ryukyu.ac.jp>
date Sun, 06 Feb 2022 16:47:41 +0900
parents e75e143b92e7
children
line wrap: on
line source

using System;
using System.IO;
using Christie_net.datagear.dg;
using MessagePack;

namespace Christie_net.datagear.command {
public class RemoteTakeCommand : Command{
    public RemoteTakeCommand(CommandBuilder cb) : base(cb) {
        this.dg = new MessagePackDataGear<object>(this.clazz);
    }
    
    public override void Execute() {
        new CommandBuilder().Init(CommandType.REPLY).Connection(connection).Key(key).Dg(dg).Build().Execute();
    }

    public override byte[] Convert() {
        MemoryStream stream = new MemoryStream();

        try {
            byte[] command = MessagePackSerializer.Serialize(CreateRemoteMessage());


            stream.Write(command, 0, command.Length);

            stream.Position = 0;
        } catch (IOException e) {
            Console.WriteLine(e.StackTrace);
        }

        return stream.ToArray();
    }
}
}