comparison OrthancServer/OrthancRestApi/OrthancRestAnonymizeModify.cpp @ 2869:2bd87764709c

refactoring
author Sebastien Jodogne <s.jodogne@gmail.com>
date Mon, 08 Oct 2018 17:20:44 +0200
parents abce036683cd
children 5dd649de253d
comparison
equal deleted inserted replaced
2868:abce036683cd 2869:2bd87764709c
626 // Bad JSON request 626 // Bad JSON request
627 throw OrthancException(ErrorCode_BadFileFormat); 627 throw OrthancException(ErrorCode_BadFileFormat);
628 } 628 }
629 629
630 const std::string study = call.GetUriComponent("id", ""); 630 const std::string study = call.GetUriComponent("id", "");
631 int priority = Toolbox::GetJsonIntegerField(request, "Priority", 0);
632 631
633 std::auto_ptr<SplitStudyJob> job(new SplitStudyJob(context, study)); 632 std::auto_ptr<SplitStudyJob> job(new SplitStudyJob(context, study));
634 job->SetOrigin(call); 633 job->SetOrigin(call);
635 job->SetDescription("REST API");
636 634
637 std::vector<std::string> series; 635 std::vector<std::string> series;
638 SerializationToolbox::ReadArrayOfStrings(series, request, "Series"); 636 SerializationToolbox::ReadArrayOfStrings(series, request, "Series");
639 637
640 for (size_t i = 0; i < series.size(); i++) 638 for (size_t i = 0; i < series.size(); i++)
694 job->Replace(FromDcmtkBridge::ParseTag(tags[i]), value.asString()); 692 job->Replace(FromDcmtkBridge::ParseTag(tags[i]), value.asString());
695 } 693 }
696 } 694 }
697 } 695 }
698 696
699 std::string id; 697 OrthancRestApi::GetApi(call).SubmitCommandsJob
700 context.GetJobsEngine().GetRegistry().Submit(id, job.release(), priority); 698 (call, job.release(), true /* synchronous by default */, request);
701
702 Json::Value v;
703 v["ID"] = id;
704 call.GetOutput().AnswerJson(v);
705 } 699 }
706 700
707 701
708 static void MergeStudy(RestApiPostCall& call) 702 static void MergeStudy(RestApiPostCall& call)
709 { 703 {
715 // Bad JSON request 709 // Bad JSON request
716 throw OrthancException(ErrorCode_BadFileFormat); 710 throw OrthancException(ErrorCode_BadFileFormat);
717 } 711 }
718 712
719 const std::string study = call.GetUriComponent("id", ""); 713 const std::string study = call.GetUriComponent("id", "");
720 int priority = Toolbox::GetJsonIntegerField(request, "Priority", 0);
721 714
722 std::auto_ptr<MergeStudyJob> job(new MergeStudyJob(context, study)); 715 std::auto_ptr<MergeStudyJob> job(new MergeStudyJob(context, study));
723 job->SetOrigin(call); 716 job->SetOrigin(call);
724 job->SetDescription("REST API");
725 717
726 std::vector<std::string> resources; 718 std::vector<std::string> resources;
727 SerializationToolbox::ReadArrayOfStrings(resources, request, "Resources"); 719 SerializationToolbox::ReadArrayOfStrings(resources, request, "Resources");
728 720
729 for (size_t i = 0; i < resources.size(); i++) 721 for (size_t i = 0; i < resources.size(); i++)
737 if (request.isMember(KEEP_SOURCE)) 729 if (request.isMember(KEEP_SOURCE))
738 { 730 {
739 job->SetKeepSource(SerializationToolbox::ReadBoolean(request, KEEP_SOURCE)); 731 job->SetKeepSource(SerializationToolbox::ReadBoolean(request, KEEP_SOURCE));
740 } 732 }
741 733
742 std::string id; 734 OrthancRestApi::GetApi(call).SubmitCommandsJob
743 context.GetJobsEngine().GetRegistry().Submit(id, job.release(), priority); 735 (call, job.release(), true /* synchronous by default */, request);
744
745 Json::Value v;
746 v["ID"] = id;
747 call.GetOutput().AnswerJson(v);
748 } 736 }
749 737
750 738
751 void OrthancRestApi::RegisterAnonymizeModify() 739 void OrthancRestApi::RegisterAnonymizeModify()
752 { 740 {