comparison Plugins/Engine/PluginsJob.cpp @ 2815:925d8dc03a23

unserialization of jobs from plugins
author Sebastien Jodogne <s.jodogne@gmail.com>
date Tue, 11 Sep 2018 16:34:21 +0200
parents 7d1d3136f6cf
children bfee0b9f3209
comparison
equal deleted inserted replaced
2814:7d1d3136f6cf 2815:925d8dc03a23
45 #include <json/reader.h> 45 #include <json/reader.h>
46 #include <cassert> 46 #include <cassert>
47 47
48 namespace Orthanc 48 namespace Orthanc
49 { 49 {
50 PluginsJob::PluginsJob(const _OrthancPluginSubmitJob& parameters) : 50 PluginsJob::PluginsJob(const _OrthancPluginCreateJob& parameters) :
51 parameters_(parameters) 51 parameters_(parameters)
52 { 52 {
53 if (parameters_.job == NULL) 53 if (parameters_.job == NULL)
54 { 54 {
55 throw OrthancException(ErrorCode_NullPointer); 55 throw OrthancException(ErrorCode_NullPointer);
56 } 56 }
57 57
58 if (parameters_.resultId == NULL || 58 if (parameters_.target == NULL ||
59 parameters_.freeJob == NULL || 59 parameters_.finalize == NULL ||
60 parameters_.type == NULL || 60 parameters_.type == NULL ||
61 parameters_.getProgress == NULL || 61 parameters_.getProgress == NULL ||
62 parameters_.getContent == NULL || 62 parameters_.getContent == NULL ||
63 parameters_.getSerialized == NULL || 63 parameters_.getSerialized == NULL ||
64 parameters_.step == NULL || 64 parameters_.step == NULL ||
65 parameters_.stop == NULL || 65 parameters_.stop == NULL ||
66 parameters_.reset == NULL) 66 parameters_.reset == NULL)
67 { 67 {
68 parameters_.freeJob(parameters.job); 68 parameters_.finalize(parameters.job);
69 throw OrthancException(ErrorCode_NullPointer); 69 throw OrthancException(ErrorCode_NullPointer);
70 } 70 }
71 71
72 type_.assign(parameters.type); 72 type_.assign(parameters.type);
73 } 73 }
74 74
75 PluginsJob::~PluginsJob() 75 PluginsJob::~PluginsJob()
76 { 76 {
77 assert(parameters_.job != NULL); 77 assert(parameters_.job != NULL);
78 parameters_.freeJob(parameters_.job); 78 parameters_.finalize(parameters_.job);
79 } 79 }
80 80
81 JobStepResult PluginsJob::Step() 81 JobStepResult PluginsJob::Step()
82 { 82 {
83 OrthancPluginJobStepStatus status = parameters_.step(parameters_.job); 83 OrthancPluginJobStepStatus status = parameters_.step(parameters_.job);