1
0
mirror of https://github.com/f4exb/sdrangel.git synced 2026-06-03 06:24:48 -04:00

Web API: /sdrangel/logging implementation (1)

This commit is contained in:
f4exb
2017-11-23 18:43:01 +01:00
parent 02e0945368
commit 4999b04379
5 changed files with 174 additions and 0 deletions
+46
View File
@@ -125,6 +125,52 @@ void WebAPIRequestMapper::service(qtwebapp::HttpRequest& request, qtwebapp::Http
response.setStatus(405,"Invalid HTTP method");
}
}
else if (path == WebAPIAdapterInterface::instanceLoggingURL)
{
Swagger::SWGLoggingInfo normalResponse;
Swagger::SWGErrorResponse errorResponse;
if (request.getMethod() == "GET")
{
int status = m_adapter->instanceLoggingGet(normalResponse, errorResponse);
if (status == 200) {
response.write(normalResponse.asJson().toUtf8());
} else {
response.write(errorResponse.asJson().toUtf8());
}
response.setStatus(status);
}
else if (request.getMethod() == "PUT")
{
try
{
QString jsonStr = request.getBody();
qDebug("WebAPIRequestMapper::service: /sdrangel/logging (PUT): %s", qPrintable(jsonStr));
normalResponse.fromJson(jsonStr);
int status = m_adapter->instanceLoggingPut(normalResponse, errorResponse);
if (status == 200) {
response.write(normalResponse.asJson().toUtf8());
} else {
response.write(errorResponse.asJson().toUtf8());
}
response.setStatus(status);
}
catch (const std::exception& ex)
{
response.write("Invalid input format");
response.setStatus(400,"Invalid input format");
}
}
else
{
response.write("Invalid HTTP method");
response.setStatus(405,"Invalid HTTP method");
}
}
else
{
// QDirIterator it(":", QDirIterator::Subdirectories);