Mercurial > hg > orthanc
comparison OrthancServer/OrthancRestApi2.cpp @ 212:f276b175dcaf
delete resources
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Thu, 29 Nov 2012 10:13:49 +0100 |
parents | b7aea293b965 |
children | 4ce7fdcc8879 |
comparison
equal
deleted
inserted
replaced
211:b7aea293b965 | 212:f276b175dcaf |
---|---|
78 Json::Value result; | 78 Json::Value result; |
79 context.GetIndex().GetAllUuids(result, resourceType); | 79 context.GetIndex().GetAllUuids(result, resourceType); |
80 call.GetOutput().AnswerJson(result); | 80 call.GetOutput().AnswerJson(result); |
81 } | 81 } |
82 | 82 |
83 template <enum ResourceType resourceType> | |
84 static void GetSingleResource(RestApi::GetCall& call) | |
85 { | |
86 RETRIEVE_CONTEXT(call); | |
87 | |
88 Json::Value result; | |
89 if (context.GetIndex().LookupResource(result, call.GetUriComponent("id", ""), resourceType)) | |
90 { | |
91 call.GetOutput().AnswerJson(result); | |
92 } | |
93 } | |
94 | |
95 template <enum ResourceType resourceType> | |
96 static void DeleteSingleResource(RestApi::DeleteCall& call) | |
97 { | |
98 RETRIEVE_CONTEXT(call); | |
99 | |
100 Json::Value result; | |
101 if (context.GetIndex().DeleteResource(result, call.GetUriComponent("id", ""), resourceType)) | |
102 { | |
103 call.GetOutput().AnswerJson(result); | |
104 } | |
105 } | |
106 | |
83 | 107 |
84 // Changes API -------------------------------------------------------------- | 108 // Changes API -------------------------------------------------------------- |
85 | 109 |
86 static void GetChanges(RestApi::GetCall& call) | 110 static void GetChanges(RestApi::GetCall& call) |
87 { | 111 { |
151 | 175 |
152 Register("/instances", ListResources<ResourceType_Instance>); | 176 Register("/instances", ListResources<ResourceType_Instance>); |
153 Register("/patients", ListResources<ResourceType_Patient>); | 177 Register("/patients", ListResources<ResourceType_Patient>); |
154 Register("/series", ListResources<ResourceType_Series>); | 178 Register("/series", ListResources<ResourceType_Series>); |
155 Register("/studies", ListResources<ResourceType_Study>); | 179 Register("/studies", ListResources<ResourceType_Study>); |
180 | |
181 Register("/instances/{id}", DeleteSingleResource<ResourceType_Instance>); | |
182 Register("/instances/{id}", GetSingleResource<ResourceType_Instance>); | |
183 Register("/patients/{id}", DeleteSingleResource<ResourceType_Patient>); | |
184 Register("/patients/{id}", GetSingleResource<ResourceType_Patient>); | |
185 Register("/series/{id}", DeleteSingleResource<ResourceType_Series>); | |
186 Register("/series/{id}", GetSingleResource<ResourceType_Series>); | |
187 Register("/studies/{id}", DeleteSingleResource<ResourceType_Study>); | |
188 Register("/studies/{id}", GetSingleResource<ResourceType_Study>); | |
156 } | 189 } |
157 } | 190 } |