Removed class ApiRouter.

This commit is contained in:
XMRig 2019-07-19 04:41:48 +07:00
parent 1d78e7d60d
commit ca7fb33848
7 changed files with 37 additions and 146 deletions

View file

@ -48,6 +48,7 @@
#ifdef XMRIG_FEATURE_API
# include "api/Api.h"
# include "api/interfaces/IApiRequest.h"
#endif
@ -167,6 +168,7 @@ int xmrig::Base::init()
# ifdef XMRIG_FEATURE_API
d_ptr->api = new Api(this);
d_ptr->api->addListener(this);
# endif
Platform::init(config()->userAgent());
@ -288,3 +290,31 @@ void xmrig::Base::onFileChanged(const String &fileName)
d_ptr->replace(config);
}
#ifdef XMRIG_FEATURE_API
void xmrig::Base::onRequest(IApiRequest &request)
{
if (request.method() == IApiRequest::METHOD_GET) {
if (request.url() == "/1/config") {
if (request.isRestricted()) {
return request.done(403);
}
request.accept();
config()->getJSON(request.doc());
}
}
else if (request.method() == IApiRequest::METHOD_PUT || request.method() == IApiRequest::METHOD_POST) {
if (request.url() == "/1/config") {
request.accept();
if (!reload(request.json())) {
return request.done(400);
}
request.done(204);
}
}
}
#endif