aboutsummaryrefslogtreecommitdiffstats
path: root/library/cpp/messagebus/debug_receiver/debug_receiver_proto.h
blob: d34710dcf733a40b9e0d588a1535bffc96a513cc (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#pragma once

#include <library/cpp/messagebus/ybus.h>

struct TDebugReceiverMessage: public NBus::TBusMessage {
    /// constructor to create messages on sending end
    TDebugReceiverMessage(ui16 type)
        : NBus::TBusMessage(type)
    {
    }

    /// constructor with serialzed data to examine the header
    TDebugReceiverMessage(NBus::ECreateUninitialized)
        : NBus::TBusMessage(NBus::ECreateUninitialized())
    {
    }

    TBuffer Payload;
};

struct TDebugReceiverProtocol: public NBus::TBusProtocol {
    TDebugReceiverProtocol();

    void Serialize(const NBus::TBusMessage* mess, TBuffer& data) override;

    TAutoPtr<NBus::TBusMessage> Deserialize(ui16 messageType, TArrayRef<const char> payload) override;
};