mirror of
https://github.com/f4exb/sdrangel.git
synced 2026-08-14 15:33:34 -04:00
Web API: /sdrangel/preset (GET) implementation
This commit is contained in:
@@ -25,3 +25,4 @@ QString WebAPIAdapterInterface::instanceLoggingURL = "/sdrangel/logging";
|
||||
QString WebAPIAdapterInterface::instanceAudioURL = "/sdrangel/audio";
|
||||
QString WebAPIAdapterInterface::instanceLocationURL = "/sdrangel/location";
|
||||
QString WebAPIAdapterInterface::instanceDVSerialURL = "/sdrangel/dvserial";
|
||||
QString WebAPIAdapterInterface::instancePresetURL = "/sdrangel/preset";
|
||||
|
||||
@@ -32,6 +32,7 @@ namespace Swagger
|
||||
class SWGLocationInformation;
|
||||
class SWGDVSeralDevices;
|
||||
class SWGErrorResponse;
|
||||
class SWGPresets;
|
||||
}
|
||||
|
||||
class WebAPIAdapterInterface
|
||||
@@ -132,6 +133,15 @@ public:
|
||||
Swagger::SWGErrorResponse& error __attribute__((unused)))
|
||||
{ return 501; }
|
||||
|
||||
/**
|
||||
* Handler of /sdrangel/location (GET) swagger/sdrangel/code/html2/index.html#api-Default-instanceChannels
|
||||
* returns the Http status code (default 501: not implemented)
|
||||
*/
|
||||
virtual int instancePresetGet(
|
||||
Swagger::SWGPresets& response __attribute__((unused)),
|
||||
Swagger::SWGErrorResponse& error __attribute__((unused)))
|
||||
{ return 501; }
|
||||
|
||||
static QString instanceSummaryURL;
|
||||
static QString instanceDevicesURL;
|
||||
static QString instanceChannelsURL;
|
||||
@@ -139,6 +149,7 @@ public:
|
||||
static QString instanceAudioURL;
|
||||
static QString instanceLocationURL;
|
||||
static QString instanceDVSerialURL;
|
||||
static QString instancePresetURL;
|
||||
};
|
||||
|
||||
|
||||
|
||||
@@ -29,6 +29,7 @@
|
||||
#include "SWGAudioDevicesSelect.h"
|
||||
#include "SWGLocationInformation.h"
|
||||
#include "SWGDVSeralDevices.h"
|
||||
#include "SWGPresets.h"
|
||||
#include "SWGErrorResponse.h"
|
||||
|
||||
WebAPIRequestMapper::WebAPIRequestMapper(QObject* parent) :
|
||||
@@ -70,6 +71,8 @@ void WebAPIRequestMapper::service(qtwebapp::HttpRequest& request, qtwebapp::Http
|
||||
instanceLocationService(request, response);
|
||||
} else if (path == WebAPIAdapterInterface::instanceDVSerialURL) {
|
||||
instanceDVSerialService(request, response);
|
||||
} else if (path == WebAPIAdapterInterface::instancePresetURL) {
|
||||
instancePresetService(request, response);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -322,6 +325,29 @@ void WebAPIRequestMapper::instanceDVSerialService(qtwebapp::HttpRequest& request
|
||||
}
|
||||
}
|
||||
|
||||
void WebAPIRequestMapper::instancePresetService(qtwebapp::HttpRequest& request, qtwebapp::HttpResponse& response)
|
||||
{
|
||||
Swagger::SWGPresets normalResponse;
|
||||
Swagger::SWGErrorResponse errorResponse;
|
||||
|
||||
if (request.getMethod() == "GET")
|
||||
{
|
||||
int status = m_adapter->instancePresetGet(normalResponse, errorResponse);
|
||||
response.setStatus(status);
|
||||
|
||||
if (status == 200) {
|
||||
response.write(normalResponse.asJson().toUtf8());
|
||||
} else {
|
||||
response.write(errorResponse.asJson().toUtf8());
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
response.setStatus(405,"Invalid HTTP method");
|
||||
response.write("Invalid HTTP method");
|
||||
}
|
||||
}
|
||||
|
||||
bool WebAPIRequestMapper::parseJsonBody(QString& jsonStr, qtwebapp::HttpResponse& response)
|
||||
{
|
||||
Swagger::SWGErrorResponse errorResponse;
|
||||
|
||||
@@ -46,6 +46,7 @@ private:
|
||||
void instanceAudioService(qtwebapp::HttpRequest& request, qtwebapp::HttpResponse& response);
|
||||
void instanceLocationService(qtwebapp::HttpRequest& request, qtwebapp::HttpResponse& response);
|
||||
void instanceDVSerialService(qtwebapp::HttpRequest& request, qtwebapp::HttpResponse& response);
|
||||
void instancePresetService(qtwebapp::HttpRequest& request, qtwebapp::HttpResponse& response);
|
||||
|
||||
bool parseJsonBody(QString& jsonStr, qtwebapp::HttpResponse& response);
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user