comparison Core/JobsEngine/JobsRegistry.cpp @ 3191:20826867141f

ignore jobs that cannot be unserialized
author Sebastien Jodogne <s.jodogne@gmail.com>
date Mon, 04 Feb 2019 21:09:44 +0100
parents fca730c267d7
children e44e0127e553
comparison
equal deleted inserted replaced
3190:f451e93cd58b 3191:20826867141f
1377 Json::Value::Members members = s[JOBS].getMemberNames(); 1377 Json::Value::Members members = s[JOBS].getMemberNames();
1378 1378
1379 for (Json::Value::Members::const_iterator it = members.begin(); 1379 for (Json::Value::Members::const_iterator it = members.begin();
1380 it != members.end(); ++it) 1380 it != members.end(); ++it)
1381 { 1381 {
1382 std::auto_ptr<JobHandler> job(new JobHandler(unserializer, s[JOBS][*it], *it)); 1382 std::auto_ptr<JobHandler> job;
1383
1384 try
1385 {
1386 job.reset(new JobHandler(unserializer, s[JOBS][*it], *it));
1387 }
1388 catch (OrthancException& e)
1389 {
1390 LOG(WARNING) << "Cannot unserialize one job from previous execution, "
1391 << "skipping it: " << e.What();
1392 continue;
1393 }
1383 1394
1384 const boost::posix_time::ptime lastChangeTime = job->GetLastStateChangeTime(); 1395 const boost::posix_time::ptime lastChangeTime = job->GetLastStateChangeTime();
1385 1396
1386 std::string id; 1397 std::string id;
1387 SubmitInternal(id, job.release()); 1398 SubmitInternal(id, job.release());