Mercurial > hg > orthanc
comparison OrthancServer/OrthancRestApi2.cpp @ 211:b7aea293b965
list of resources
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Thu, 29 Nov 2012 09:56:46 +0100 |
parents | 96b7918a6a18 |
children | f276b175dcaf |
comparison
equal
deleted
inserted
replaced
210:96b7918a6a18 | 211:b7aea293b965 |
---|---|
47 | 47 |
48 | 48 |
49 namespace Orthanc | 49 namespace Orthanc |
50 { | 50 { |
51 // System information ------------------------------------------------------- | 51 // System information ------------------------------------------------------- |
52 | |
53 static void ServeRoot(RestApi::GetCall& call) | |
54 { | |
55 call.GetOutput().Redirect("app/explorer.html"); | |
56 } | |
52 | 57 |
53 static void GetSystemInformation(RestApi::GetCall& call) | 58 static void GetSystemInformation(RestApi::GetCall& call) |
54 { | 59 { |
55 RETRIEVE_CONTEXT(call); | 60 RETRIEVE_CONTEXT(call); |
56 | 61 |
57 Json::Value result = Json::objectValue; | 62 Json::Value result = Json::objectValue; |
58 result["Version"] = ORTHANC_VERSION; | 63 result["Version"] = ORTHANC_VERSION; |
59 result["Name"] = GetGlobalStringParameter("Name", ""); | 64 result["Name"] = GetGlobalStringParameter("Name", ""); |
60 result["TotalCompressedSize"] = boost::lexical_cast<std::string>(context.GetIndex().GetTotalCompressedSize()); | 65 result["TotalCompressedSize"] = boost::lexical_cast<std::string>(context.GetIndex().GetTotalCompressedSize()); |
61 result["TotalUncompressedSize"] = boost::lexical_cast<std::string>(context.GetIndex().GetTotalUncompressedSize()); | 66 result["TotalUncompressedSize"] = boost::lexical_cast<std::string>(context.GetIndex().GetTotalUncompressedSize()); |
67 call.GetOutput().AnswerJson(result); | |
68 } | |
69 | |
70 | |
71 // List all the patients, studies, series or instances ---------------------- | |
72 | |
73 template <enum ResourceType resourceType> | |
74 static void ListResources(RestApi::GetCall& call) | |
75 { | |
76 RETRIEVE_CONTEXT(call); | |
77 | |
78 Json::Value result; | |
79 context.GetIndex().GetAllUuids(result, resourceType); | |
62 call.GetOutput().AnswerJson(result); | 80 call.GetOutput().AnswerJson(result); |
63 } | 81 } |
64 | 82 |
65 | 83 |
66 // Changes API -------------------------------------------------------------- | 84 // Changes API -------------------------------------------------------------- |
124 index_(index), | 142 index_(index), |
125 storage_(path) | 143 storage_(path) |
126 { | 144 { |
127 GetListOfDicomModalities(modalities_); | 145 GetListOfDicomModalities(modalities_); |
128 | 146 |
147 Register("/", ServeRoot); | |
129 Register("/system", GetSystemInformation); | 148 Register("/system", GetSystemInformation); |
130 Register("/changes", GetChanges); | 149 Register("/changes", GetChanges); |
131 Register("/modalities", ListModalities); | 150 Register("/modalities", ListModalities); |
151 | |
152 Register("/instances", ListResources<ResourceType_Instance>); | |
153 Register("/patients", ListResources<ResourceType_Patient>); | |
154 Register("/series", ListResources<ResourceType_Series>); | |
155 Register("/studies", ListResources<ResourceType_Study>); | |
132 } | 156 } |
133 } | 157 } |