Mercurial > hg > orthanc
diff Core/JobsEngine/JobsRegistry.cpp @ 2655:c196d76cb8fa jobs
serialization
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Tue, 05 Jun 2018 17:57:49 +0200 |
parents | a3f0f61a14ca |
children | a6d3e45eeff5 |
line wrap: on
line diff
--- a/Core/JobsEngine/JobsRegistry.cpp Tue Jun 05 17:09:18 2018 +0200 +++ b/Core/JobsEngine/JobsRegistry.cpp Tue Jun 05 17:57:49 2018 +0200 @@ -236,6 +236,8 @@ void Serialize(Json::Value& target) const { + target = Json::objectValue; + target["ID"] = id_; target["State"] = EnumerationToString(state_); target["JobType"] = jobType_; target["Priority"] = priority_; @@ -258,18 +260,17 @@ } JobHandler(IJobUnserializer& unserializer, - const std::string& id, const Json::Value& serialized) : - id_(id), lastStateChangeTime_(boost::posix_time::microsec_clock::universal_time()), pauseScheduled_(false), cancelScheduled_(false) { - state_ = StringToJobState(IJobUnserializer::GetString(serialized, "State")); - priority_ = IJobUnserializer::GetInteger(serialized, "Priority"); + id_ = StringToJobState(IJobUnserializer::ReadString(serialized, "ID")); + state_ = StringToJobState(IJobUnserializer::ReadString(serialized, "State")); + priority_ = IJobUnserializer::ReadInteger(serialized, "Priority"); creationTime_ = boost::posix_time::from_iso_string - (IJobUnserializer::GetString(serialized, "CreationTime")); - runtime_ = boost::posix_time::milliseconds(IJobUnserializer::GetInteger(serialized, "Runtime")); + (IJobUnserializer::ReadString(serialized, "CreationTime")); + runtime_ = boost::posix_time::milliseconds(IJobUnserializer::ReadInteger(serialized, "Runtime")); retryTime_ = creationTime_; @@ -560,13 +561,14 @@ boost::mutex::scoped_lock lock(mutex_); CheckInvariants(); - target = Json::objectValue; + target = Json::arrayValue; for (JobsIndex::const_iterator it = jobsIndex_.begin(); it != jobsIndex_.end(); ++it) { - Json::Value& v = target[it->first]; + Json::Value v; it->second->Serialize(v); + target.append(v); } }