tools/Replay.hpp | 50 +++++++++++++++++++++--------------------- wsd/TraceFile.hpp | 63 ++++++++++++++++++++++++++++++++++++------------------ 2 files changed, 67 insertions(+), 46 deletions(-)
New commits: commit a65a528220b038069963f8f70b20953e44ee4c14 Author: Miklos Vajna <vmik...@collabora.com> AuthorDate: Wed Dec 19 09:12:28 2018 +0100 Commit: Miklos Vajna <vmik...@collabora.com> CommitDate: Wed Dec 19 09:12:36 2018 +0100 TraceFileRecord: make members private Change-Id: Ie83077b248185d7748423f512b7b61b4945bd779 diff --git a/tools/Replay.hpp b/tools/Replay.hpp index d9d95b6a3..8ea1be7f3 100644 --- a/tools/Replay.hpp +++ b/tools/Replay.hpp @@ -142,14 +142,14 @@ protected: for (;;) { const TraceFileRecord rec = traceFile.getNextRecord(); - if (rec.Dir == TraceFileRecord::Direction::Invalid) + if (rec.getDir() == TraceFileRecord::Direction::Invalid) { // End of trace file. break; } const std::chrono::microseconds::rep deltaCurrent = std::chrono::duration_cast<std::chrono::microseconds>(std::chrono::steady_clock::now() - epochCurrent).count(); - const unsigned deltaFile = rec.TimestampNs - epochFile; + const unsigned deltaFile = rec.getTimestampNs() - epochFile; const unsigned delay = (_ignoreTiming ? 0 : deltaFile - deltaCurrent); if (delay > 0) { @@ -163,61 +163,61 @@ protected: std::cout << rec.toString() << std::endl; - if (rec.Dir == TraceFileRecord::Direction::Event) + if (rec.getDir() == TraceFileRecord::Direction::Event) { // Meta info about about an event. static const std::string NewSession("NewSession: "); static const std::string EndSession("EndSession: "); - if (rec.Payload.find(NewSession) == 0) + if (rec.getPayload().find(NewSession) == 0) { - const std::string uriOrig = rec.Payload.substr(NewSession.size()); + const std::string uriOrig = rec.getPayload().substr(NewSession.size()); std::string uri; Poco::URI::decode(uriOrig, uri); auto it = _sessions.find(uri); if (it != _sessions.end()) { // Add a new session. - if (it->second.find(rec.SessionId) != it->second.end()) + if (it->second.find(rec.getSessionId()) != it->second.end()) { - std::cout << "ERROR: session [" << rec.SessionId << "] already exists on doc [" << uri << "]\n"; + std::cout << "ERROR: session [" << rec.getSessionId() << "] already exists on doc [" << uri << "]\n"; } else { - std::shared_ptr<Connection> connection = Connection::create(_serverUri, uri, rec.SessionId); + std::shared_ptr<Connection> connection = Connection::create(_serverUri, uri, rec.getSessionId()); if (connection) { - it->second.emplace(rec.SessionId, connection); + it->second.emplace(rec.getSessionId(), connection); } } } else { std::cout << "New Document: " << uri << "\n"; - _childToDoc.emplace(rec.Pid, uri); - std::shared_ptr<Connection> connection = Connection::create(_serverUri, uri, rec.SessionId); + _childToDoc.emplace(rec.getPid(), uri); + std::shared_ptr<Connection> connection = Connection::create(_serverUri, uri, rec.getSessionId()); if (connection) { - _sessions[uri].emplace(rec.SessionId, connection); + _sessions[uri].emplace(rec.getSessionId(), connection); } } } - else if (rec.Payload.find(EndSession) == 0) + else if (rec.getPayload().find(EndSession) == 0) { - const std::string uriOrig = rec.Payload.substr(EndSession.size()); + const std::string uriOrig = rec.getPayload().substr(EndSession.size()); std::string uri; Poco::URI::decode(uriOrig, uri); auto it = _sessions.find(uri); if (it != _sessions.end()) { - std::cout << "EndSession [" << rec.SessionId << "]: " << uri << "\n"; + std::cout << "EndSession [" << rec.getSessionId() << "]: " << uri << "\n"; - it->second.erase(rec.SessionId); + it->second.erase(rec.getSessionId()); if (it->second.empty()) { std::cout << "End Doc [" << uri << "].\n"; _sessions.erase(it); - _childToDoc.erase(rec.Pid); + _childToDoc.erase(rec.getPid()); } } else @@ -226,27 +226,27 @@ protected: } } } - else if (rec.Dir == TraceFileRecord::Direction::Incoming) + else if (rec.getDir() == TraceFileRecord::Direction::Incoming) { - auto docIt = _childToDoc.find(rec.Pid); + auto docIt = _childToDoc.find(rec.getPid()); if (docIt != _childToDoc.end()) { const auto& uri = docIt->second; auto it = _sessions.find(uri); if (it != _sessions.end()) { - const auto sessionIt = it->second.find(rec.SessionId); + const auto sessionIt = it->second.find(rec.getSessionId()); if (sessionIt != it->second.end()) { // Send the command. - if (!sessionIt->second->send(rec.Payload)) + if (!sessionIt->second->send(rec.getPayload())) { it->second.erase(sessionIt); } } else { - std::cout << "ERROR: Session [" << rec.SessionId << "] does not exist.\n"; + std::cout << "ERROR: Session [" << rec.getSessionId() << "] does not exist.\n"; } } else @@ -256,16 +256,16 @@ protected: } else { - std::cout << "ERROR: Unknown PID [" << rec.Pid << "] maps to no active document.\n"; + std::cout << "ERROR: Unknown PID [" << rec.getPid() << "] maps to no active document.\n"; } } else { - std::cout << "ERROR: Unknown trace file direction [" << static_cast<char>(rec.Dir) << "].\n"; + std::cout << "ERROR: Unknown trace file direction [" << static_cast<char>(rec.getDir()) << "].\n"; } epochCurrent = std::chrono::steady_clock::now(); - epochFile = rec.TimestampNs; + epochFile = rec.getTimestampNs(); } } diff --git a/wsd/TraceFile.hpp b/wsd/TraceFile.hpp index 958a73cf8..f6c27eff7 100644 --- a/wsd/TraceFile.hpp +++ b/wsd/TraceFile.hpp @@ -39,25 +39,46 @@ public: }; TraceFileRecord() : - Dir(Direction::Invalid), - TimestampNs(0), - Pid(0) + _dir(Direction::Invalid), + _timestampNs(0), + _pid(0) { } std::string toString() const { std::ostringstream oss; - oss << static_cast<char>(Dir) << Pid << static_cast<char>(Dir) - << SessionId << static_cast<char>(Dir) << Payload; + oss << static_cast<char>(_dir) << _pid << static_cast<char>(_dir) + << _sessionId << static_cast<char>(_dir) << _payload; return oss.str(); } - Direction Dir; - unsigned TimestampNs; - unsigned Pid; - std::string SessionId; - std::string Payload; + void setDir(Direction dir) { _dir = dir; } + + Direction getDir() const { return _dir; } + + void setTimestampNs(unsigned timestampNs) { _timestampNs = timestampNs; } + + unsigned getTimestampNs() const { return _timestampNs; } + + void setPid(unsigned pid) { _pid = pid; } + + unsigned getPid() const { return _pid; } + + void setSessionId(const std::string& sessionId) { _sessionId = sessionId; } + + const std::string& getSessionId() const { return _sessionId; } + + void setPayload(const std::string& payload) { _payload = payload; } + + const std::string& getPayload() const { return _payload; } + +private: + Direction _dir; + unsigned _timestampNs; + unsigned _pid; + std::string _sessionId; + std::string _payload; }; /// Trace-file generator class. @@ -403,19 +424,19 @@ private: } if (_records.empty() || - _records[0].Dir != TraceFileRecord::Direction::Event || - _records[0].Payload.find("NewSession") != 0) + _records[0].getDir() != TraceFileRecord::Direction::Event || + _records[0].getPayload().find("NewSession") != 0) { fprintf(stderr, "Invalid trace file with %ld records. First record: %s\n", _records.size(), - _records.empty() ? "<empty>" : _records[0].Payload.c_str()); + _records.empty() ? "<empty>" : _records[0].getPayload().c_str()); throw std::runtime_error("Invalid trace file."); } _indexIn = advance(-1, TraceFileRecord::Direction::Incoming); _indexOut = advance(-1, TraceFileRecord::Direction::Outgoing); - _epochStart = _records[0].TimestampNs; - _epochEnd = _records[_records.size() - 1].TimestampNs; + _epochStart = _records[0].getTimestampNs(); + _epochEnd = _records[_records.size() - 1].getTimestampNs(); } static bool extractRecord(const std::string& s, TraceFileRecord& rec) @@ -424,7 +445,7 @@ private: return false; char delimiter = s[0]; - rec.Dir = static_cast<TraceFileRecord::Direction>(delimiter); + rec.setDir(static_cast<TraceFileRecord::Direction>(delimiter)); size_t pos = 1; int record = 0; @@ -435,16 +456,16 @@ private: switch (record) { case 0: - rec.TimestampNs = std::atoi(s.substr(pos, next - pos).c_str()); + rec.setTimestampNs(std::atoi(s.substr(pos, next - pos).c_str())); break; case 1: - rec.Pid = std::atoi(s.substr(pos, next - pos).c_str()); + rec.setPid(std::atoi(s.substr(pos, next - pos).c_str())); break; case 2: - rec.SessionId = s.substr(pos, next - pos); + rec.setSessionId(s.substr(pos, next - pos)); break; case 3: - rec.Payload = s.substr(pos); + rec.setPayload(s.substr(pos)); return true; } @@ -461,7 +482,7 @@ private: { while (++index < _records.size()) { - if (_records[index].Dir == dir) + if (_records[index].getDir() == dir) { break; } _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits