2020#include " report/wrapper/EventFactory.h"
2121#include " Convert.h"
2222
23- #include < fmt/chrono.h>
24- #include < fmt/format.h>
23+ #include < google/protobuf/util/time_util.h>
2524
26- #include < chrono>
2725#include < random>
28- # include < cstdint >
29- # include < string >
26+
27+ using namespace google ::protobuf::util ;
3028
3129namespace {
3230
@@ -37,15 +35,6 @@ namespace {
3735
3836 return distribution (generator);
3937 }
40-
41- std::string now_as_string () {
42- const auto now = std::chrono::system_clock::now ();
43- auto micros = std::chrono::duration_cast<std::chrono::microseconds>(now.time_since_epoch ());
44-
45- return fmt::format (" {:%Y-%m-%dT%H:%M:%S}.{:06d}Z" ,
46- fmt::localtime (std::chrono::system_clock::to_time_t (now)),
47- micros.count () % 1000000 );
48- }
4938}
5039
5140namespace wr {
@@ -57,7 +46,7 @@ namespace wr {
5746 rpc::Event EventFactory::start (ProcessId pid, ProcessId ppid, const Execution &execution) const {
5847 rpc::Event event;
5948 event.set_rid (rid_);
60- event.set_timestamp ( now_as_string ());
49+ event.mutable_timestamp ()-> CopyFrom ( TimeUtil::GetCurrentTime ());
6150 {
6251 rpc::Event_Started &event_started = *event.mutable_started ();
6352 event_started.set_pid (pid);
@@ -68,24 +57,24 @@ namespace wr {
6857 }
6958
7059 rpc::Event EventFactory::signal (int number) const {
71- rpc::Event result ;
72- result .set_rid (rid_);
73- result. set_timestamp ( now_as_string ());
60+ rpc::Event event ;
61+ event .set_rid (rid_);
62+ event. mutable_timestamp ()-> CopyFrom ( TimeUtil::GetCurrentTime ());
7463 {
75- rpc::Event_Signalled &event = *result .mutable_signalled ();
76- event .set_number (number);
64+ rpc::Event_Signalled &event_signalled = *event .mutable_signalled ();
65+ event_signalled .set_number (number);
7766 }
78- return result ;
67+ return event ;
7968 }
8069
8170 rpc::Event EventFactory::terminate (int code) const {
82- rpc::Event result ;
83- result .set_rid (rid_);
84- result. set_timestamp ( now_as_string ());
71+ rpc::Event event ;
72+ event .set_rid (rid_);
73+ event. mutable_timestamp ()-> CopyFrom ( TimeUtil::GetCurrentTime ());
8574 {
86- rpc::Event_Terminated &event = *result .mutable_terminated ();
87- event .set_status (code);
75+ rpc::Event_Terminated &event_terminated = *event .mutable_terminated ();
76+ event_terminated .set_status (code);
8877 }
89- return result ;
78+ return event ;
9079 }
9180}
0 commit comments