Mercurial > hg > orthanc
comparison OrthancServer/OrthancRestApi/OrthancRestResources.cpp @ 3033:5da6d1063d8f db-changes
effectively replacing LookupResource by DatabaseLookup in searches
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Wed, 19 Dec 2018 13:58:28 +0100 |
parents | fd587cf51a89 |
children | 54e422fe31ce |
comparison
equal
deleted
inserted
replaced
3032:19ebb606910d | 3033:5da6d1063d8f |
---|---|
1399 } | 1399 } |
1400 | 1400 |
1401 since = static_cast<size_t>(tmp); | 1401 since = static_cast<size_t>(tmp); |
1402 } | 1402 } |
1403 | 1403 |
1404 std::string level = request[KEY_LEVEL].asString(); | 1404 ResourceType level = StringToResourceType(request[KEY_LEVEL].asCString()); |
1405 | 1405 |
1406 LookupResource query(StringToResourceType(level.c_str())); | 1406 DatabaseLookup query; |
1407 DatabaseLookup query2; | |
1408 | 1407 |
1409 Json::Value::Members members = request[KEY_QUERY].getMemberNames(); | 1408 Json::Value::Members members = request[KEY_QUERY].getMemberNames(); |
1410 for (size_t i = 0; i < members.size(); i++) | 1409 for (size_t i = 0; i < members.size(); i++) |
1411 { | 1410 { |
1412 if (request[KEY_QUERY][members[i]].type() != Json::stringValue) | 1411 if (request[KEY_QUERY][members[i]].type() != Json::stringValue) |
1413 { | 1412 { |
1414 throw OrthancException(ErrorCode_BadRequest, | 1413 throw OrthancException(ErrorCode_BadRequest, |
1415 "Tag \"" + members[i] + "\" should be associated with a string"); | 1414 "Tag \"" + members[i] + "\" should be associated with a string"); |
1416 } | 1415 } |
1417 | 1416 |
1418 query.AddDicomConstraint(FromDcmtkBridge::ParseTag(members[i]), | 1417 query.AddRestConstraint(FromDcmtkBridge::ParseTag(members[i]), |
1419 request[KEY_QUERY][members[i]].asString(), | 1418 request[KEY_QUERY][members[i]].asString(), |
1420 caseSensitive); | 1419 caseSensitive, true); |
1421 query2.AddRestConstraint(FromDcmtkBridge::ParseTag(members[i]), | |
1422 request[KEY_QUERY][members[i]].asString(), | |
1423 caseSensitive, true); | |
1424 } | 1420 } |
1425 | 1421 |
1426 FindVisitor visitor; | 1422 FindVisitor visitor; |
1427 context.Apply(visitor, query, query2, since, limit); | 1423 context.Apply(visitor, query, level, since, limit); |
1428 visitor.Answer(call.GetOutput(), context.GetIndex(), query.GetLevel(), expand); | 1424 visitor.Answer(call.GetOutput(), context.GetIndex(), level, expand); |
1429 } | 1425 } |
1430 } | 1426 } |
1431 | 1427 |
1432 | 1428 |
1433 template <enum ResourceType start, | 1429 template <enum ResourceType start, |