comparison OrthancServer/Sources/ServerContext.cpp @ 5684:9b3816c21008 find-refactoring

integration mainline->find-refactoring
author Sebastien Jodogne <s.jodogne@gmail.com>
date Tue, 09 Jul 2024 11:39:07 +0200
parents fd4c5e064cbe 0c218d90096e
children f0f7d15d195e
comparison
equal deleted inserted replaced
5682:fd4c5e064cbe 5684:9b3816c21008
1532 1532
1533 1533
1534 void ServerContext::Apply(ILookupVisitor& visitor, 1534 void ServerContext::Apply(ILookupVisitor& visitor,
1535 const DatabaseLookup& lookup, 1535 const DatabaseLookup& lookup,
1536 ResourceType queryLevel, 1536 ResourceType queryLevel,
1537 const std::set<std::string>& labels,
1538 LabelsConstraint labelsConstraint,
1537 size_t since, 1539 size_t since,
1538 size_t limit) 1540 size_t limit)
1539 { 1541 {
1540 unsigned int databaseLimit = (queryLevel == ResourceType_Instance ? 1542 unsigned int databaseLimit = (queryLevel == ResourceType_Instance ?
1541 limitFindInstances_ : limitFindResults_); 1543 limitFindInstances_ : limitFindResults_);
1564 **/ 1566 **/
1565 1567
1566 ResourceFinder finder(queryLevel, false /* TODO-FIND: don't expand for now */); 1568 ResourceFinder finder(queryLevel, false /* TODO-FIND: don't expand for now */);
1567 finder.SetLimits(0, lookupLimit); 1569 finder.SetLimits(0, lookupLimit);
1568 finder.SetDatabaseLookup(*fastLookup); 1570 finder.SetDatabaseLookup(*fastLookup);
1569 finder.SetLabels(lookup.GetLabels()); 1571 finder.SetLabels(labels);
1570 finder.SetLabelsConstraint(lookup.GetLabelsConstraint()); 1572 finder.SetLabelsConstraint(labelsConstraint);
1571 1573
1572 if (queryLevel != ResourceType_Instance) 1574 if (queryLevel != ResourceType_Instance)
1573 { 1575 {
1574 finder.SetRetrieveOneInstanceIdentifier(true); 1576 finder.SetRetrieveOneInstanceIdentifier(true);
1575 } 1577 }
1599 { 1601 {
1600 /** 1602 /**
1601 * VERSION IN ORTHANC <= 1.12.4 1603 * VERSION IN ORTHANC <= 1.12.4
1602 **/ 1604 **/
1603 1605
1604 GetIndex().ApplyLookupResources(resources, &instances, *fastLookup, queryLevel, 1606 GetIndex().ApplyLookupResources(resources, &instances, *fastLookup, queryLevel, labels, labelsConstraint, lookupLimit);
1605 lookup.GetLabels(), lookup.GetLabelsConstraint(), lookupLimit);
1606 } 1607 }
1607 1608
1608 bool complete = (databaseLimit == 0 || 1609 bool complete = (databaseLimit == 0 ||
1609 resources.size() <= databaseLimit); 1610 resources.size() <= databaseLimit);
1610 1611