Mercurial > hg > orthanc
comparison OrthancFramework/Sources/RestApi/RestApiCallDocumentation.h @ 4401:354ea95b294a
documenting system calls
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Wed, 23 Dec 2020 15:13:45 +0100 |
parents | 029366f95217 |
children | ad646ff506d0 |
comparison
equal
deleted
inserted
replaced
4400:029366f95217 | 4401:354ea95b294a |
---|---|
58 | 58 |
59 HttpMethod method_; | 59 HttpMethod method_; |
60 std::string tag_; | 60 std::string tag_; |
61 std::string summary_; | 61 std::string summary_; |
62 std::string description_; | 62 std::string description_; |
63 Parameters uriComponents_; | 63 Parameters uriArguments_; |
64 Parameters httpHeaders_; | 64 Parameters httpHeaders_; |
65 Parameters getArguments_; | 65 Parameters getArguments_; |
66 AllowedTypes requestTypes_; | 66 AllowedTypes requestTypes_; |
67 Parameters requestFields_; // For JSON request | 67 Parameters requestFields_; // For JSON request |
68 AllowedTypes answerTypes_; | 68 AllowedTypes answerTypes_; |
69 Parameters answerFields_; // Only if JSON object | 69 Parameters answerFields_; // Only if JSON object |
70 std::string answerDescription_; | 70 std::string answerDescription_; |
71 Json::Value sample_; | 71 bool hasSampleText_; |
72 std::string sampleText_; | |
73 Json::Value sampleJson_; | |
72 | 74 |
73 public: | 75 public: |
74 explicit RestApiCallDocumentation(HttpMethod method) : | 76 explicit RestApiCallDocumentation(HttpMethod method) : |
75 method_(method), | 77 method_(method), |
76 sample_(Json::nullValue) | 78 hasSampleText_(false), |
79 sampleJson_(Json::nullValue) | |
77 { | 80 { |
78 } | 81 } |
79 | 82 |
80 RestApiCallDocumentation& SetTag(const std::string& tag) | 83 RestApiCallDocumentation& SetTag(const std::string& tag) |
81 { | 84 { |
103 const std::string& description); | 106 const std::string& description); |
104 | 107 |
105 RestApiCallDocumentation& AddAnswerType(MimeType type, | 108 RestApiCallDocumentation& AddAnswerType(MimeType type, |
106 const std::string& description); | 109 const std::string& description); |
107 | 110 |
108 RestApiCallDocumentation& SetUriComponent(const std::string& name, | 111 RestApiCallDocumentation& SetUriArgument(const std::string& name, |
109 Type type, | 112 Type type, |
110 const std::string& description); | 113 const std::string& description); |
114 | |
115 bool HasUriArgument(const std::string& name) const | |
116 { | |
117 return (uriArguments_.find(name) != uriArguments_.end()); | |
118 } | |
111 | 119 |
112 RestApiCallDocumentation& SetHttpHeader(const std::string& name, | 120 RestApiCallDocumentation& SetHttpHeader(const std::string& name, |
113 const std::string& description); | 121 const std::string& description); |
114 | 122 |
115 RestApiCallDocumentation& SetHttpGetArgument(const std::string& name, | 123 RestApiCallDocumentation& SetHttpGetArgument(const std::string& name, |
118 | 126 |
119 RestApiCallDocumentation& SetAnswerField(const std::string& name, | 127 RestApiCallDocumentation& SetAnswerField(const std::string& name, |
120 Type type, | 128 Type type, |
121 const std::string& description); | 129 const std::string& description); |
122 | 130 |
123 void SetHttpGetSample(const std::string& url); | 131 void SetHttpGetSample(const std::string& url, |
132 bool isJson); | |
124 | 133 |
125 void SetSample(const Json::Value& sample) | 134 void SetSample(const Json::Value& sample) |
126 { | 135 { |
127 sample_ = sample; | 136 sampleJson_ = sample; |
128 } | 137 } |
129 | 138 |
130 bool FormatOpenApi(Json::Value& target) const; | 139 bool FormatOpenApi(Json::Value& target, |
140 const std::set<std::string>& expectedUriArguments) const; | |
131 }; | 141 }; |
132 } | 142 } |