blob: e2c289ed5921f23d5813af2f93a8786adf3f3124 (
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
28
29
30
31
32
|
#include "packet.h"
#include <library/cpp/actors/core/probes.h>
#include <util/system/datetime.h>
LWTRACE_USING(ACTORLIB_PROVIDER);
ui32 TEventHolder::Fill(IEventHandle& ev) {
Serial = 0;
Descr.Type = ev.Type;
Descr.Flags = ev.Flags;
Descr.Recipient = ev.Recipient;
Descr.Sender = ev.Sender;
Descr.Cookie = ev.Cookie;
ev.TraceId.Serialize(&Descr.TraceId);
ForwardRecipient = ev.GetForwardOnNondeliveryRecipient();
EventActuallySerialized = 0;
Descr.Checksum = 0;
if (ev.HasBuffer()) {
Buffer = ev.ReleaseChainBuffer();
EventSerializedSize = Buffer->GetSize();
} else if (ev.HasEvent()) {
Event.Reset(ev.ReleaseBase());
EventSerializedSize = Event->CalculateSerializedSize();
} else {
EventSerializedSize = 0;
}
return EventSerializedSize;
}
|