diff OrthancServer/OrthancRestApi.cpp @ 351:64625960af22

fix
author Sebastien Jodogne <s.jodogne@gmail.com>
date Mon, 28 Jan 2013 15:58:09 +0100
parents 8031f9cfe7fe
children 8d3a0db39967
line wrap: on
line diff
--- a/OrthancServer/OrthancRestApi.cpp	Mon Jan 28 15:36:44 2013 +0100
+++ b/OrthancServer/OrthancRestApi.cpp	Mon Jan 28 15:58:09 2013 +0100
@@ -1413,6 +1413,36 @@
   }
 
 
+  static void ModifyPatientInplace(RestApi::PostCall& call)
+  {
+    Removals removals;
+    Replacements replacements;
+    bool removePrivateTags;
+
+    if (ParseModifyRequest(removals, replacements, removePrivateTags, call))
+    {
+      AnonymizeOrModifyResource(removals, replacements, removePrivateTags, 
+                                MetadataType_ModifiedFrom, ChangeType_ModifiedPatient, 
+                                ResourceType_Patient, call);
+    }
+  }
+
+
+  static void AnonymizePatientInplace(RestApi::PostCall& call)
+  {
+    Removals removals;
+    Replacements replacements;
+    bool removePrivateTags;
+
+    if (ParseAnonymizationRequest(removals, replacements, removePrivateTags, call))
+    {
+      AnonymizeOrModifyResource(removals, replacements, removePrivateTags, 
+                                MetadataType_AnonymizedFrom, ChangeType_AnonymizedPatient, 
+                                ResourceType_Patient, call);
+    }
+  }
+
+
 
   // Registration of the various REST handlers --------------------------------
 
@@ -1472,10 +1502,12 @@
     Register("/instances/{id}/modify", ModifyInstance);
     Register("/series/{id}/modify", ModifySeriesInplace);
     Register("/studies/{id}/modify", ModifyStudyInplace);
+    Register("/patients/{id}/modify", ModifyPatientInplace);
 
     Register("/instances/{id}/anonymize", AnonymizeInstance);
     Register("/series/{id}/anonymize", AnonymizeSeriesInplace);
     Register("/studies/{id}/anonymize", AnonymizeStudyInplace);
+    Register("/patients/{id}/anonymize", AnonymizePatientInplace);
 
     Register("/tools/generate-uid", GenerateUid);
   }