comparison OrthancServer/OrthancRestApi.cpp @ 438:7bbe77cb9e12

DELETE metadata
author Sebastien Jodogne <s.jodogne@gmail.com>
date Wed, 15 May 2013 16:51:10 +0200
parents beca6747945e
children 23e5b35e3c5c
comparison
equal deleted inserted replaced
437:beca6747945e 438:7bbe77cb9e12
1534 call.GetOutput().AnswerBuffer(value, "text/plain"); 1534 call.GetOutput().AnswerBuffer(value, "text/plain");
1535 } 1535 }
1536 } 1536 }
1537 1537
1538 1538
1539 static void DeleteMetadata(RestApi::DeleteCall& call)
1540 {
1541 RETRIEVE_CONTEXT(call);
1542
1543 std::string publicId = call.GetUriComponent("id", "");
1544 std::string name = call.GetUriComponent("name", "");
1545 MetadataType metadata = StringToMetadata(name);
1546
1547 if (metadata >= MetadataType_StartUser &&
1548 metadata <= MetadataType_EndUser)
1549 {
1550 // It is forbidden to modify internal metadata
1551 context.GetIndex().DeleteMetadata(publicId, metadata);
1552 call.GetOutput().AnswerBuffer("", "text/plain");
1553 }
1554 }
1555
1556
1539 static void SetMetadata(RestApi::PutCall& call) 1557 static void SetMetadata(RestApi::PutCall& call)
1540 { 1558 {
1541 RETRIEVE_CONTEXT(call); 1559 RETRIEVE_CONTEXT(call);
1542 1560
1543 std::string publicId = call.GetUriComponent("id", ""); 1561 std::string publicId = call.GetUriComponent("id", "");
1589 Register("/patients/{id}/archive", GetArchive<ResourceType_Patient>); 1607 Register("/patients/{id}/archive", GetArchive<ResourceType_Patient>);
1590 Register("/studies/{id}/archive", GetArchive<ResourceType_Study>); 1608 Register("/studies/{id}/archive", GetArchive<ResourceType_Study>);
1591 Register("/series/{id}/archive", GetArchive<ResourceType_Series>); 1609 Register("/series/{id}/archive", GetArchive<ResourceType_Series>);
1592 1610
1593 Register("/instances/{id}/metadata", ListMetadata); 1611 Register("/instances/{id}/metadata", ListMetadata);
1612 Register("/instances/{id}/metadata/{name}", DeleteMetadata);
1594 Register("/instances/{id}/metadata/{name}", GetMetadata); 1613 Register("/instances/{id}/metadata/{name}", GetMetadata);
1595 Register("/instances/{id}/metadata/{name}", SetMetadata); 1614 Register("/instances/{id}/metadata/{name}", SetMetadata);
1596 Register("/patients/{id}/metadata", ListMetadata); 1615 Register("/patients/{id}/metadata", ListMetadata);
1616 Register("/patients/{id}/metadata/{name}", DeleteMetadata);
1597 Register("/patients/{id}/metadata/{name}", GetMetadata); 1617 Register("/patients/{id}/metadata/{name}", GetMetadata);
1598 Register("/patients/{id}/metadata/{name}", SetMetadata); 1618 Register("/patients/{id}/metadata/{name}", SetMetadata);
1599 Register("/series/{id}/metadata", ListMetadata); 1619 Register("/series/{id}/metadata", ListMetadata);
1620 Register("/series/{id}/metadata/{name}", DeleteMetadata);
1600 Register("/series/{id}/metadata/{name}", GetMetadata); 1621 Register("/series/{id}/metadata/{name}", GetMetadata);
1601 Register("/series/{id}/metadata/{name}", SetMetadata); 1622 Register("/series/{id}/metadata/{name}", SetMetadata);
1602 Register("/studies/{id}/metadata", ListMetadata); 1623 Register("/studies/{id}/metadata", ListMetadata);
1624 Register("/studies/{id}/metadata/{name}", DeleteMetadata);
1603 Register("/studies/{id}/metadata/{name}", GetMetadata); 1625 Register("/studies/{id}/metadata/{name}", GetMetadata);
1604 Register("/studies/{id}/metadata/{name}", SetMetadata); 1626 Register("/studies/{id}/metadata/{name}", SetMetadata);
1605 1627
1606 Register("/patients/{id}/protected", IsProtectedPatient); 1628 Register("/patients/{id}/protected", IsProtectedPatient);
1607 Register("/patients/{id}/protected", SetPatientProtection); 1629 Register("/patients/{id}/protected", SetPatientProtection);