comparison OrthancServer/Sources/OrthancFindRequestHandler.cpp @ 5700:1fab9ddaf702 find-refactoring

webdav using ResourceFinder
author Sebastien Jodogne <s.jodogne@gmail.com>
date Fri, 12 Jul 2024 15:02:59 +0200
parents e8e028aed89f
children 359a8adb3802
comparison
equal deleted inserted replaced
5699:e8e028aed89f 5700:1fab9ddaf702
334 { 334 {
335 class LookupVisitorV2 : public ResourceFinder::IVisitor 335 class LookupVisitorV2 : public ResourceFinder::IVisitor
336 { 336 {
337 private: 337 private:
338 DicomFindAnswers& answers_; 338 DicomFindAnswers& answers_;
339 ServerContext& context_;
340 ResourceType level_;
341 const DicomMap& query_;
342 DicomArray queryAsArray_; 339 DicomArray queryAsArray_;
343 const std::list<DicomTag>& sequencesToReturn_; 340 const std::list<DicomTag>& sequencesToReturn_;
344 std::string defaultPrivateCreator_; // the private creator to use if the group is not defined in the query itself 341 std::string defaultPrivateCreator_; // the private creator to use if the group is not defined in the query itself
345 const std::map<uint16_t, std::string>& privateCreators_; // the private creators defined in the query itself 342 const std::map<uint16_t, std::string>& privateCreators_; // the private creators defined in the query itself
346 std::string retrieveAet_; 343 std::string retrieveAet_;
347 FindStorageAccessMode findStorageAccessMode_;
348 344
349 public: 345 public:
350 LookupVisitorV2(DicomFindAnswers& answers, 346 LookupVisitorV2(DicomFindAnswers& answers,
351 ServerContext& context,
352 ResourceType level,
353 const DicomMap& query, 347 const DicomMap& query,
354 const std::list<DicomTag>& sequencesToReturn, 348 const std::list<DicomTag>& sequencesToReturn,
355 const std::map<uint16_t, std::string>& privateCreators, 349 const std::map<uint16_t, std::string>& privateCreators) :
356 FindStorageAccessMode findStorageAccessMode) :
357 answers_(answers), 350 answers_(answers),
358 context_(context),
359 level_(level),
360 query_(query),
361 queryAsArray_(query), 351 queryAsArray_(query),
362 sequencesToReturn_(sequencesToReturn), 352 sequencesToReturn_(sequencesToReturn),
363 privateCreators_(privateCreators), 353 privateCreators_(privateCreators)
364 findStorageAccessMode_(findStorageAccessMode)
365 { 354 {
366 answers_.SetComplete(false); 355 answers_.SetComplete(false);
367 356
368 { 357 {
369 OrthancConfiguration::ReaderLock lock; 358 OrthancConfiguration::ReaderLock lock;
645 634
646 ResourceFinder finder(level, false /* don't expand */); 635 ResourceFinder finder(level, false /* don't expand */);
647 finder.SetDatabaseLookup(lookup); 636 finder.SetDatabaseLookup(lookup);
648 finder.AddRequestedTags(requestedTags); 637 finder.AddRequestedTags(requestedTags);
649 638
650 LookupVisitorV2 visitor(answers, context_, level, *filteredInput, sequencesToReturn, privateCreators, context_.GetFindStorageAccessMode()); 639 LookupVisitorV2 visitor(answers, *filteredInput, sequencesToReturn, privateCreators);
651 finder.Execute(visitor, context_); 640 finder.Execute(visitor, context_);
652 } 641 }
653 else 642 else
654 { 643 {
655 /** 644 /**