diff --git a/.gitignore b/.gitignore index b3196d1b..3f30b42c 100644 --- a/.gitignore +++ b/.gitignore @@ -31,12 +31,6 @@ vendor /src/m2adapter/Makefile /src/proxy/Makefile /src/handler/Makefile -/src/handler/libpushpin-handler/Makefile -/src/handler/pushpin-handler/Makefile -/src/handler/libpushpin-handler.a -/src/handler/tests/Makefile -/src/handler/tests/*test/Makefile -/src/handler/tests/*test/*test /src/rust/Makefile /src/runner/Makefile /src/runner/librunner/Makefile diff --git a/src/cpp/cpp/cpp.pri b/src/cpp/cpp/cpp.pri index 6ae9a593..5c84d63d 100644 --- a/src/cpp/cpp/cpp.pri +++ b/src/cpp/cpp/cpp.pri @@ -143,3 +143,64 @@ SOURCES += \ $$PSRC_DIR/engine.cpp \ $$PSRC_DIR/app.cpp \ $$PSRC_DIR/main.cpp + +HSRC_DIR = $$SRC_DIR/handler + +HEADERS += \ + $$HSRC_DIR/deferred.h \ + $$HSRC_DIR/variantutil.h \ + $$HSRC_DIR/jsonpointer.h \ + $$HSRC_DIR/jsonpatch.h \ + $$HSRC_DIR/detectrule.h \ + $$HSRC_DIR/lastids.h \ + $$HSRC_DIR/cidset.h \ + $$HSRC_DIR/sessionrequest.h \ + $$HSRC_DIR/requeststate.h \ + $$HSRC_DIR/wscontrolmessage.h \ + $$HSRC_DIR/publishformat.h \ + $$HSRC_DIR/publishitem.h \ + $$HSRC_DIR/instruct.h \ + $$HSRC_DIR/format.h \ + $$HSRC_DIR/idformat.h \ + $$HSRC_DIR/httpsession.h \ + $$HSRC_DIR/httpsessionupdatemanager.h \ + $$HSRC_DIR/wssession.h \ + $$HSRC_DIR/publishlastids.h \ + $$HSRC_DIR/controlrequest.h \ + $$HSRC_DIR/conncheckworker.h \ + $$HSRC_DIR/refreshworker.h \ + $$HSRC_DIR/ratelimiter.h \ + $$HSRC_DIR/sequencer.h \ + $$HSRC_DIR/filter.h \ + $$HSRC_DIR/filterstack.h \ + $$HSRC_DIR/handlerengine.h \ + $$HSRC_DIR/handlerapp.h \ + $$HSRC_DIR/main.h + +SOURCES += \ + $$HSRC_DIR/deferred.cpp \ + $$HSRC_DIR/variantutil.cpp \ + $$HSRC_DIR/jsonpointer.cpp \ + $$HSRC_DIR/jsonpatch.cpp \ + $$HSRC_DIR/sessionrequest.cpp \ + $$HSRC_DIR/requeststate.cpp \ + $$HSRC_DIR/wscontrolmessage.cpp \ + $$HSRC_DIR/publishformat.cpp \ + $$HSRC_DIR/publishitem.cpp \ + $$HSRC_DIR/instruct.cpp \ + $$HSRC_DIR/format.cpp \ + $$HSRC_DIR/idformat.cpp \ + $$HSRC_DIR/httpsession.cpp \ + $$HSRC_DIR/httpsessionupdatemanager.cpp \ + $$HSRC_DIR/wssession.cpp \ + $$HSRC_DIR/publishlastids.cpp \ + $$HSRC_DIR/controlrequest.cpp \ + $$HSRC_DIR/conncheckworker.cpp \ + $$HSRC_DIR/refreshworker.cpp \ + $$HSRC_DIR/ratelimiter.cpp \ + $$HSRC_DIR/sequencer.cpp \ + $$HSRC_DIR/filter.cpp \ + $$HSRC_DIR/filterstack.cpp \ + $$HSRC_DIR/handlerengine.cpp \ + $$HSRC_DIR/handlerapp.cpp \ + $$HSRC_DIR/handlermain.cpp diff --git a/src/handler/cidset.h b/src/cpp/handler/cidset.h similarity index 100% rename from src/handler/cidset.h rename to src/cpp/handler/cidset.h diff --git a/src/handler/conncheckworker.cpp b/src/cpp/handler/conncheckworker.cpp similarity index 100% rename from src/handler/conncheckworker.cpp rename to src/cpp/handler/conncheckworker.cpp diff --git a/src/handler/conncheckworker.h b/src/cpp/handler/conncheckworker.h similarity index 100% rename from src/handler/conncheckworker.h rename to src/cpp/handler/conncheckworker.h diff --git a/src/handler/controlrequest.cpp b/src/cpp/handler/controlrequest.cpp similarity index 100% rename from src/handler/controlrequest.cpp rename to src/cpp/handler/controlrequest.cpp diff --git a/src/handler/controlrequest.h b/src/cpp/handler/controlrequest.h similarity index 100% rename from src/handler/controlrequest.h rename to src/cpp/handler/controlrequest.h diff --git a/src/handler/deferred.cpp b/src/cpp/handler/deferred.cpp similarity index 100% rename from src/handler/deferred.cpp rename to src/cpp/handler/deferred.cpp diff --git a/src/handler/deferred.h b/src/cpp/handler/deferred.h similarity index 100% rename from src/handler/deferred.h rename to src/cpp/handler/deferred.h diff --git a/src/handler/detectrule.h b/src/cpp/handler/detectrule.h similarity index 100% rename from src/handler/detectrule.h rename to src/cpp/handler/detectrule.h diff --git a/src/handler/filter.cpp b/src/cpp/handler/filter.cpp similarity index 100% rename from src/handler/filter.cpp rename to src/cpp/handler/filter.cpp diff --git a/src/handler/filter.h b/src/cpp/handler/filter.h similarity index 100% rename from src/handler/filter.h rename to src/cpp/handler/filter.h diff --git a/src/handler/filterstack.cpp b/src/cpp/handler/filterstack.cpp similarity index 100% rename from src/handler/filterstack.cpp rename to src/cpp/handler/filterstack.cpp diff --git a/src/handler/filterstack.h b/src/cpp/handler/filterstack.h similarity index 100% rename from src/handler/filterstack.h rename to src/cpp/handler/filterstack.h diff --git a/src/handler/format.cpp b/src/cpp/handler/format.cpp similarity index 100% rename from src/handler/format.cpp rename to src/cpp/handler/format.cpp diff --git a/src/handler/format.h b/src/cpp/handler/format.h similarity index 100% rename from src/handler/format.h rename to src/cpp/handler/format.h diff --git a/src/handler/app.cpp b/src/cpp/handler/handlerapp.cpp similarity index 97% rename from src/handler/app.cpp rename to src/cpp/handler/handlerapp.cpp index 002c169a..342ae81d 100644 --- a/src/handler/app.cpp +++ b/src/cpp/handler/handlerapp.cpp @@ -20,7 +20,7 @@ * $FANOUT_END_LICENSE$ */ -#include "app.h" +#include "handlerapp.h" #include #include @@ -31,7 +31,7 @@ #include "processquit.h" #include "log.h" #include "settings.h" -#include "engine.h" +#include "handlerengine.h" #include "config.h" #define DEFAULT_HTTP_MAX_HEADERS_SIZE 10000 @@ -144,16 +144,16 @@ static CommandLineParseResult parseCommandLine(QCommandLineParser *parser, ArgsD return CommandLineOk; } -class App::Private : public QObject +class HandlerApp::Private : public QObject { Q_OBJECT public: - App *q; + HandlerApp *q; ArgsData args; - Engine *engine; + HandlerEngine *engine; - Private(App *_q) : + Private(HandlerApp *_q) : QObject(_q), q(_q), engine(0) @@ -299,7 +299,7 @@ class App::Private : public QObject return; } - Engine::Configuration config; + HandlerEngine::Configuration config; config.appVersion = VERSION; config.instanceId = "pushpin-handler_" + QByteArray::number(QCoreApplication::applicationPid()); if(!services.contains("mongrel2") && (!condure_in_stream_specs.isEmpty() || !condure_out_specs.isEmpty())) @@ -350,7 +350,7 @@ class App::Private : public QObject config.prometheusPort = prometheusPort; config.prometheusPrefix = prometheusPrefix; - engine = new Engine(this); + engine = new HandlerEngine(this); if(!engine->start(config)) { emit q->quit(); @@ -383,20 +383,20 @@ private slots: } }; -App::App(QObject *parent) : +HandlerApp::HandlerApp(QObject *parent) : QObject(parent) { d = new Private(this); } -App::~App() +HandlerApp::~HandlerApp() { delete d; } -void App::start() +void HandlerApp::start() { d->start(); } -#include "app.moc" +#include "handlerapp.moc" diff --git a/src/handler/app.h b/src/cpp/handler/handlerapp.h similarity index 87% rename from src/handler/app.h rename to src/cpp/handler/handlerapp.h index ca1662e2..3853db45 100644 --- a/src/handler/app.h +++ b/src/cpp/handler/handlerapp.h @@ -20,18 +20,18 @@ * $FANOUT_END_LICENSE$ */ -#ifndef APP_H -#define APP_H +#ifndef HANDLERAPP_H +#define HANDLERAPP_H #include -class App : public QObject +class HandlerApp : public QObject { Q_OBJECT public: - App(QObject *parent = 0); - ~App(); + HandlerApp(QObject *parent = 0); + ~HandlerApp(); void start(); diff --git a/src/handler/engine.cpp b/src/cpp/handler/handlerengine.cpp similarity index 99% rename from src/handler/engine.cpp rename to src/cpp/handler/handlerengine.cpp index f7c2822e..83980bd0 100644 --- a/src/handler/engine.cpp +++ b/src/cpp/handler/handlerengine.cpp @@ -21,7 +21,7 @@ * $FANOUT_END_LICENSE$ */ -#include "engine.h" +#include "handlerengine.h" #include #include @@ -1181,7 +1181,7 @@ private slots: } }; -class Engine::Private : public QObject +class HandlerEngine::Private : public QObject { Q_OBJECT @@ -1189,12 +1189,12 @@ class Engine::Private : public QObject class PublishAction : public RateLimiter::Action { public: - Engine::Private *ep; + HandlerEngine::Private *ep; QPointer target; PublishItem item; QList exposeHeaders; - PublishAction(Engine::Private *_ep, QObject *_target, const PublishItem &_item, const QList &_exposeHeaders = QList()) : + PublishAction(HandlerEngine::Private *_ep, QObject *_target, const PublishItem &_item, const QList &_exposeHeaders = QList()) : ep(_ep), target(_target), item(_item), @@ -1212,7 +1212,7 @@ class Engine::Private : public QObject } }; - Engine *q; + HandlerEngine *q; Configuration config; ZhttpManager *zhttpIn; ZhttpManager *zhttpOut; @@ -1244,7 +1244,7 @@ class Engine::Private : public QObject QSet deferreds; Deferred *report; - Private(Engine *_q) : + Private(HandlerEngine *_q) : QObject(_q), q(_q), zhttpIn(0), @@ -3143,25 +3143,25 @@ private slots: } }; -Engine::Engine(QObject *parent) : +HandlerEngine::HandlerEngine(QObject *parent) : QObject(parent) { d = new Private(this); } -Engine::~Engine() +HandlerEngine::~HandlerEngine() { delete d; } -bool Engine::start(const Configuration &config) +bool HandlerEngine::start(const Configuration &config) { return d->start(config); } -void Engine::reload() +void HandlerEngine::reload() { d->reload(); } -#include "engine.moc" +#include "handlerengine.moc" diff --git a/src/handler/engine.h b/src/cpp/handler/handlerengine.h similarity index 94% rename from src/handler/engine.h rename to src/cpp/handler/handlerengine.h index 54f0ffa8..e236f70f 100644 --- a/src/handler/engine.h +++ b/src/cpp/handler/handlerengine.h @@ -20,14 +20,14 @@ * $FANOUT_END_LICENSE$ */ -#ifndef ENGINE_H -#define ENGINE_H +#ifndef HANDLERENGINE_H +#define HANDLERENGINE_H #include #include #include -class Engine : public QObject +class HandlerEngine : public QObject { Q_OBJECT @@ -100,8 +100,8 @@ class Engine : public QObject } }; - Engine(QObject *parent = 0); - ~Engine(); + HandlerEngine(QObject *parent = 0); + ~HandlerEngine(); bool start(const Configuration &config); void reload(); diff --git a/src/handler/main.cpp b/src/cpp/handler/handlermain.cpp similarity index 78% rename from src/handler/main.cpp rename to src/cpp/handler/handlermain.cpp index 3ddb57b9..109a4d8d 100644 --- a/src/handler/main.cpp +++ b/src/cpp/handler/handlermain.cpp @@ -22,20 +22,20 @@ #include #include -#include "app.h" +#include "handlerapp.h" -class AppMain : public QObject +class HandlerAppMain : public QObject { Q_OBJECT public: - App *app; + HandlerApp *app; public slots: void start() { - app = new App(this); - connect(app, &App::quit, this, &AppMain::app_quit); + app = new HandlerApp(this); + connect(app, &HandlerApp::quit, this, &HandlerAppMain::app_quit); app->start(); } @@ -46,13 +46,17 @@ public slots: } }; -int main(int argc, char **argv) +extern "C" { + +int handler_main(int argc, char **argv) { QCoreApplication qapp(argc, argv); - AppMain appMain; + HandlerAppMain appMain; QTimer::singleShot(0, &appMain, SLOT(start())); return qapp.exec(); } -#include "main.moc" +} + +#include "handlermain.moc" diff --git a/src/handler/httpsession.cpp b/src/cpp/handler/httpsession.cpp similarity index 100% rename from src/handler/httpsession.cpp rename to src/cpp/handler/httpsession.cpp diff --git a/src/handler/httpsession.h b/src/cpp/handler/httpsession.h similarity index 100% rename from src/handler/httpsession.h rename to src/cpp/handler/httpsession.h diff --git a/src/handler/httpsessionupdatemanager.cpp b/src/cpp/handler/httpsessionupdatemanager.cpp similarity index 100% rename from src/handler/httpsessionupdatemanager.cpp rename to src/cpp/handler/httpsessionupdatemanager.cpp diff --git a/src/handler/httpsessionupdatemanager.h b/src/cpp/handler/httpsessionupdatemanager.h similarity index 100% rename from src/handler/httpsessionupdatemanager.h rename to src/cpp/handler/httpsessionupdatemanager.h diff --git a/src/handler/idformat.cpp b/src/cpp/handler/idformat.cpp similarity index 100% rename from src/handler/idformat.cpp rename to src/cpp/handler/idformat.cpp diff --git a/src/handler/idformat.h b/src/cpp/handler/idformat.h similarity index 100% rename from src/handler/idformat.h rename to src/cpp/handler/idformat.h diff --git a/src/handler/instruct.cpp b/src/cpp/handler/instruct.cpp similarity index 100% rename from src/handler/instruct.cpp rename to src/cpp/handler/instruct.cpp diff --git a/src/handler/instruct.h b/src/cpp/handler/instruct.h similarity index 100% rename from src/handler/instruct.h rename to src/cpp/handler/instruct.h diff --git a/src/handler/jsonpatch.cpp b/src/cpp/handler/jsonpatch.cpp similarity index 100% rename from src/handler/jsonpatch.cpp rename to src/cpp/handler/jsonpatch.cpp diff --git a/src/handler/jsonpatch.h b/src/cpp/handler/jsonpatch.h similarity index 100% rename from src/handler/jsonpatch.h rename to src/cpp/handler/jsonpatch.h diff --git a/src/handler/jsonpointer.cpp b/src/cpp/handler/jsonpointer.cpp similarity index 100% rename from src/handler/jsonpointer.cpp rename to src/cpp/handler/jsonpointer.cpp diff --git a/src/handler/jsonpointer.h b/src/cpp/handler/jsonpointer.h similarity index 100% rename from src/handler/jsonpointer.h rename to src/cpp/handler/jsonpointer.h diff --git a/src/handler/lastids.h b/src/cpp/handler/lastids.h similarity index 100% rename from src/handler/lastids.h rename to src/cpp/handler/lastids.h diff --git a/src/cpp/handler/main.h b/src/cpp/handler/main.h new file mode 100644 index 00000000..5d1c7532 --- /dev/null +++ b/src/cpp/handler/main.h @@ -0,0 +1,6 @@ +#ifndef HANDLER_MAIN_H +#define HANDLER_MAIN_H + +int handler_main(int argc, char **argv); + +#endif diff --git a/src/handler/publishformat.cpp b/src/cpp/handler/publishformat.cpp similarity index 100% rename from src/handler/publishformat.cpp rename to src/cpp/handler/publishformat.cpp diff --git a/src/handler/publishformat.h b/src/cpp/handler/publishformat.h similarity index 100% rename from src/handler/publishformat.h rename to src/cpp/handler/publishformat.h diff --git a/src/handler/publishitem.cpp b/src/cpp/handler/publishitem.cpp similarity index 100% rename from src/handler/publishitem.cpp rename to src/cpp/handler/publishitem.cpp diff --git a/src/handler/publishitem.h b/src/cpp/handler/publishitem.h similarity index 100% rename from src/handler/publishitem.h rename to src/cpp/handler/publishitem.h diff --git a/src/handler/publishlastids.cpp b/src/cpp/handler/publishlastids.cpp similarity index 100% rename from src/handler/publishlastids.cpp rename to src/cpp/handler/publishlastids.cpp diff --git a/src/handler/publishlastids.h b/src/cpp/handler/publishlastids.h similarity index 100% rename from src/handler/publishlastids.h rename to src/cpp/handler/publishlastids.h diff --git a/src/handler/ratelimiter.cpp b/src/cpp/handler/ratelimiter.cpp similarity index 100% rename from src/handler/ratelimiter.cpp rename to src/cpp/handler/ratelimiter.cpp diff --git a/src/handler/ratelimiter.h b/src/cpp/handler/ratelimiter.h similarity index 100% rename from src/handler/ratelimiter.h rename to src/cpp/handler/ratelimiter.h diff --git a/src/handler/refreshworker.cpp b/src/cpp/handler/refreshworker.cpp similarity index 100% rename from src/handler/refreshworker.cpp rename to src/cpp/handler/refreshworker.cpp diff --git a/src/handler/refreshworker.h b/src/cpp/handler/refreshworker.h similarity index 100% rename from src/handler/refreshworker.h rename to src/cpp/handler/refreshworker.h diff --git a/src/handler/requeststate.cpp b/src/cpp/handler/requeststate.cpp similarity index 100% rename from src/handler/requeststate.cpp rename to src/cpp/handler/requeststate.cpp diff --git a/src/handler/requeststate.h b/src/cpp/handler/requeststate.h similarity index 100% rename from src/handler/requeststate.h rename to src/cpp/handler/requeststate.h diff --git a/src/handler/sequencer.cpp b/src/cpp/handler/sequencer.cpp similarity index 100% rename from src/handler/sequencer.cpp rename to src/cpp/handler/sequencer.cpp diff --git a/src/handler/sequencer.h b/src/cpp/handler/sequencer.h similarity index 100% rename from src/handler/sequencer.h rename to src/cpp/handler/sequencer.h diff --git a/src/handler/sessionrequest.cpp b/src/cpp/handler/sessionrequest.cpp similarity index 100% rename from src/handler/sessionrequest.cpp rename to src/cpp/handler/sessionrequest.cpp diff --git a/src/handler/sessionrequest.h b/src/cpp/handler/sessionrequest.h similarity index 100% rename from src/handler/sessionrequest.h rename to src/cpp/handler/sessionrequest.h diff --git a/src/handler/variantutil.cpp b/src/cpp/handler/variantutil.cpp similarity index 100% rename from src/handler/variantutil.cpp rename to src/cpp/handler/variantutil.cpp diff --git a/src/handler/variantutil.h b/src/cpp/handler/variantutil.h similarity index 100% rename from src/handler/variantutil.h rename to src/cpp/handler/variantutil.h diff --git a/src/handler/wscontrolmessage.cpp b/src/cpp/handler/wscontrolmessage.cpp similarity index 100% rename from src/handler/wscontrolmessage.cpp rename to src/cpp/handler/wscontrolmessage.cpp diff --git a/src/handler/wscontrolmessage.h b/src/cpp/handler/wscontrolmessage.h similarity index 100% rename from src/handler/wscontrolmessage.h rename to src/cpp/handler/wscontrolmessage.h diff --git a/src/handler/wssession.cpp b/src/cpp/handler/wssession.cpp similarity index 100% rename from src/handler/wssession.cpp rename to src/cpp/handler/wssession.cpp diff --git a/src/handler/wssession.h b/src/cpp/handler/wssession.h similarity index 100% rename from src/handler/wssession.h rename to src/cpp/handler/wssession.h diff --git a/src/handler/tests/enginetest/enginetest.cpp b/src/cpp/tests/handlerenginetest/enginetest.cpp similarity index 99% rename from src/handler/tests/enginetest/enginetest.cpp rename to src/cpp/tests/handlerenginetest/enginetest.cpp index 2e2b1cce..aba2fe92 100644 --- a/src/handler/tests/enginetest/enginetest.cpp +++ b/src/cpp/tests/handlerenginetest/enginetest.cpp @@ -29,7 +29,7 @@ #include "zhttprequestpacket.h" #include "zhttpresponsepacket.h" #include "packet/httpresponsedata.h" -#include "engine.h" +#include "handlerengine.h" class Wrapper : public QObject { @@ -253,7 +253,7 @@ class EngineTest : public QObject Q_OBJECT private: - Engine *engine; + HandlerEngine *engine; Wrapper *wrapper; private slots: @@ -266,9 +266,9 @@ private slots: wrapper->startHttp(); wrapper->startProxy(); - engine = new Engine(this); + engine = new HandlerEngine(this); - Engine::Configuration config; + HandlerEngine::Configuration config; config.instanceId = "handler"; config.serverInStreamSpecs = QStringList() << "ipc://client-out-stream"; config.serverOutSpecs = QStringList() << "ipc://client-in"; diff --git a/src/handler/tests/enginetest/enginetest.pro b/src/cpp/tests/handlerenginetest/handlerenginetest.pro similarity index 100% rename from src/handler/tests/enginetest/enginetest.pro rename to src/cpp/tests/handlerenginetest/handlerenginetest.pro diff --git a/src/handler/tests/idformattest/idformattest.cpp b/src/cpp/tests/idformattest/idformattest.cpp similarity index 100% rename from src/handler/tests/idformattest/idformattest.cpp rename to src/cpp/tests/idformattest/idformattest.cpp diff --git a/src/handler/tests/idformattest/idformattest.pro b/src/cpp/tests/idformattest/idformattest.pro similarity index 100% rename from src/handler/tests/idformattest/idformattest.pro rename to src/cpp/tests/idformattest/idformattest.pro diff --git a/src/handler/tests/instructtest/instructtest.cpp b/src/cpp/tests/instructtest/instructtest.cpp similarity index 100% rename from src/handler/tests/instructtest/instructtest.cpp rename to src/cpp/tests/instructtest/instructtest.cpp diff --git a/src/handler/tests/instructtest/instructtest.pro b/src/cpp/tests/instructtest/instructtest.pro similarity index 100% rename from src/handler/tests/instructtest/instructtest.pro rename to src/cpp/tests/instructtest/instructtest.pro diff --git a/src/handler/tests/jsonpatchtest/jsonpatchtest.cpp b/src/cpp/tests/jsonpatchtest/jsonpatchtest.cpp similarity index 100% rename from src/handler/tests/jsonpatchtest/jsonpatchtest.cpp rename to src/cpp/tests/jsonpatchtest/jsonpatchtest.cpp diff --git a/src/handler/tests/jsonpatchtest/jsonpatchtest.pro b/src/cpp/tests/jsonpatchtest/jsonpatchtest.pro similarity index 100% rename from src/handler/tests/jsonpatchtest/jsonpatchtest.pro rename to src/cpp/tests/jsonpatchtest/jsonpatchtest.pro diff --git a/src/handler/tests/publishformattest/publishformattest.cpp b/src/cpp/tests/publishformattest/publishformattest.cpp similarity index 100% rename from src/handler/tests/publishformattest/publishformattest.cpp rename to src/cpp/tests/publishformattest/publishformattest.cpp diff --git a/src/handler/tests/publishformattest/publishformattest.pro b/src/cpp/tests/publishformattest/publishformattest.pro similarity index 100% rename from src/handler/tests/publishformattest/publishformattest.pro rename to src/cpp/tests/publishformattest/publishformattest.pro diff --git a/src/handler/tests/publishitemtest/publishitemtest.cpp b/src/cpp/tests/publishitemtest/publishitemtest.cpp similarity index 100% rename from src/handler/tests/publishitemtest/publishitemtest.cpp rename to src/cpp/tests/publishitemtest/publishitemtest.cpp diff --git a/src/handler/tests/publishitemtest/publishitemtest.pro b/src/cpp/tests/publishitemtest/publishitemtest.pro similarity index 100% rename from src/handler/tests/publishitemtest/publishitemtest.pro rename to src/cpp/tests/publishitemtest/publishitemtest.pro diff --git a/src/cpp/tests/tests.pri b/src/cpp/tests/tests.pri index e7847245..20a7b2d1 100644 --- a/src/cpp/tests/tests.pri +++ b/src/cpp/tests/tests.pri @@ -16,6 +16,7 @@ include($$PWD/../../../conf.pri) INCLUDEPATH += $$SRC_DIR INCLUDEPATH += $$SRC_DIR/proxy +INCLUDEPATH += $$SRC_DIR/handler INCLUDEPATH += $$QZMQ_DIR/src DEFINES += NO_IRISNET diff --git a/src/cpp/tests/tests.pro b/src/cpp/tests/tests.pro index 36785991..e3659626 100644 --- a/src/cpp/tests/tests.pro +++ b/src/cpp/tests/tests.pro @@ -4,4 +4,10 @@ SUBDIRS += \ httpheaderstest \ jwttest \ routesfiletest \ - proxyenginetest + proxyenginetest \ + jsonpatchtest \ + instructtest \ + idformattest \ + publishformattest \ + publishitemtest \ + handlerenginetest diff --git a/src/handler/pushpin-handler/pushpin-handler.pri b/src/handler/handler.pri similarity index 55% rename from src/handler/pushpin-handler/pushpin-handler.pri rename to src/handler/handler.pri index 88fca2a1..57e9af98 100644 --- a/src/handler/pushpin-handler/pushpin-handler.pri +++ b/src/handler/handler.pri @@ -2,19 +2,15 @@ QMAKE_CXXFLAGS += $$(CXXFLAGS) QMAKE_CFLAGS += $$(CFLAGS) QMAKE_LFLAGS += $$(LDFLAGS) -SRC_DIR = $$PWD/.. -CPP_DIR = $$PWD/../../cpp +CPP_DIR = $$PWD/../cpp QZMQ_DIR = $$CPP_DIR/qzmq +RUST_DIR = $$PWD/../rust -INCLUDEPATH += $$SRC_DIR INCLUDEPATH += $$CPP_DIR INCLUDEPATH += $$QZMQ_DIR/src DEFINES += NO_IRISNET -HEADERS += \ - $$SRC_DIR/app.h +INCLUDEPATH += $$RUST_DIR/include -SOURCES += \ - $$SRC_DIR/app.cpp \ - $$SRC_DIR/main.cpp +SOURCES += $$PWD/main.c diff --git a/src/handler/handler.pro b/src/handler/handler.pro index 9c9aedef..f2174a72 100644 --- a/src/handler/handler.pro +++ b/src/handler/handler.pro @@ -1,14 +1,21 @@ -TEMPLATE = subdirs +CONFIG += console +CONFIG -= app_bundle +QT -= gui +QT += network +TARGET = pushpin-handler +DESTDIR = ../../bin -libpushpin_handler.subdir = libpushpin-handler -pushpin_handler.subdir = pushpin-handler -pushpin_handler.depends = libpushpin_handler -tests.subdir = tests -tests.depends = libpushpin_handler +MOC_DIR = $$OUT_PWD/_moc +OBJECTS_DIR = $$OUT_PWD/_obj -tests.CONFIG += no_default_install +LIBS += -L$$PWD/../cpp -lpushpin-cpp +PRE_TARGETDEPS += $$PWD/../cpp/libpushpin-cpp.a -SUBDIRS += \ - libpushpin_handler \ - pushpin_handler \ - tests +include($$OUT_PWD/../rust/lib.pri) +include($$OUT_PWD/../../conf.pri) +include(handler.pri) + +unix:!isEmpty(BINDIR) { + target.path = $$BINDIR + INSTALLS += target +} diff --git a/src/handler/libpushpin-handler/libpushpin-handler.pri b/src/handler/libpushpin-handler/libpushpin-handler.pri deleted file mode 100644 index b8854e56..00000000 --- a/src/handler/libpushpin-handler/libpushpin-handler.pri +++ /dev/null @@ -1,69 +0,0 @@ -QMAKE_CXXFLAGS += $$(CXXFLAGS) -QMAKE_CFLAGS += $$(CFLAGS) -QMAKE_LFLAGS += $$(LDFLAGS) - -SRC_DIR = $$PWD/.. -CPP_DIR = $$PWD/../../cpp -QZMQ_DIR = $$CPP_DIR/qzmq - -INCLUDEPATH += $$SRC_DIR -INCLUDEPATH += $$CPP_DIR - -INCLUDEPATH += $$QZMQ_DIR/src - -DEFINES += NO_IRISNET - -HEADERS += \ - $$SRC_DIR/deferred.h \ - $$SRC_DIR/variantutil.h \ - $$SRC_DIR/jsonpointer.h \ - $$SRC_DIR/jsonpatch.h \ - $$SRC_DIR/detectrule.h \ - $$SRC_DIR/lastids.h \ - $$SRC_DIR/cidset.h \ - $$SRC_DIR/sessionrequest.h \ - $$SRC_DIR/requeststate.h \ - $$SRC_DIR/wscontrolmessage.h \ - $$SRC_DIR/publishformat.h \ - $$SRC_DIR/publishitem.h \ - $$SRC_DIR/instruct.h \ - $$SRC_DIR/format.h \ - $$SRC_DIR/idformat.h \ - $$SRC_DIR/httpsession.h \ - $$SRC_DIR/httpsessionupdatemanager.h \ - $$SRC_DIR/wssession.h \ - $$SRC_DIR/publishlastids.h \ - $$SRC_DIR/controlrequest.h \ - $$SRC_DIR/conncheckworker.h \ - $$SRC_DIR/refreshworker.h \ - $$SRC_DIR/ratelimiter.h \ - $$SRC_DIR/sequencer.h \ - $$SRC_DIR/filter.h \ - $$SRC_DIR/filterstack.h \ - $$SRC_DIR/engine.h - -SOURCES += \ - $$SRC_DIR/deferred.cpp \ - $$SRC_DIR/variantutil.cpp \ - $$SRC_DIR/jsonpointer.cpp \ - $$SRC_DIR/jsonpatch.cpp \ - $$SRC_DIR/sessionrequest.cpp \ - $$SRC_DIR/requeststate.cpp \ - $$SRC_DIR/wscontrolmessage.cpp \ - $$SRC_DIR/publishformat.cpp \ - $$SRC_DIR/publishitem.cpp \ - $$SRC_DIR/instruct.cpp \ - $$SRC_DIR/format.cpp \ - $$SRC_DIR/idformat.cpp \ - $$SRC_DIR/httpsession.cpp \ - $$SRC_DIR/httpsessionupdatemanager.cpp \ - $$SRC_DIR/wssession.cpp \ - $$SRC_DIR/publishlastids.cpp \ - $$SRC_DIR/controlrequest.cpp \ - $$SRC_DIR/conncheckworker.cpp \ - $$SRC_DIR/refreshworker.cpp \ - $$SRC_DIR/ratelimiter.cpp \ - $$SRC_DIR/sequencer.cpp \ - $$SRC_DIR/filter.cpp \ - $$SRC_DIR/filterstack.cpp \ - $$SRC_DIR/engine.cpp diff --git a/src/handler/libpushpin-handler/libpushpin-handler.pro b/src/handler/libpushpin-handler/libpushpin-handler.pro deleted file mode 100644 index d050da2e..00000000 --- a/src/handler/libpushpin-handler/libpushpin-handler.pro +++ /dev/null @@ -1,17 +0,0 @@ -TEMPLATE = lib -CONFIG -= app_bundle -CONFIG += staticlib -QT -= gui -QT += network -TARGET = pushpin-handler -DESTDIR = .. - -MOC_DIR = $$OUT_PWD/_moc -OBJECTS_DIR = $$OUT_PWD/_obj - -LIBS += -L$$PWD/../../cpp -lpushpin-cpp -PRE_TARGETDEPS += $$PWD/../../cpp/libpushpin-cpp.a - -include($$OUT_PWD/../../rust/lib.pri) -include($$OUT_PWD/../../../conf.pri) -include(libpushpin-handler.pri) diff --git a/src/handler/main.c b/src/handler/main.c new file mode 100644 index 00000000..64565ed6 --- /dev/null +++ b/src/handler/main.c @@ -0,0 +1,6 @@ +#include "handler/main.h" + +int main(int argc, char **argv) +{ + return handler_main(argc, argv); +} diff --git a/src/handler/pushpin-handler/pushpin-handler.pro b/src/handler/pushpin-handler/pushpin-handler.pro deleted file mode 100644 index 6f56cb55..00000000 --- a/src/handler/pushpin-handler/pushpin-handler.pro +++ /dev/null @@ -1,23 +0,0 @@ -CONFIG += console -CONFIG -= app_bundle -QT -= gui -QT += network -DESTDIR = ../../../bin - -MOC_DIR = $$OUT_PWD/_moc -OBJECTS_DIR = $$OUT_PWD/_obj - -LIBS += -L$$PWD/.. -lpushpin-handler -PRE_TARGETDEPS += $$PWD/../libpushpin-handler.a - -LIBS += -L$$PWD/../../cpp -lpushpin-cpp -PRE_TARGETDEPS += $$PWD/../../cpp/libpushpin-cpp.a - -include($$OUT_PWD/../../rust/lib.pri) -include($$OUT_PWD/../../../conf.pri) -include(pushpin-handler.pri) - -unix:!isEmpty(BINDIR) { - target.path = $$BINDIR - INSTALLS += target -} diff --git a/src/handler/tests/tests.pri b/src/handler/tests/tests.pri deleted file mode 100644 index fb017213..00000000 --- a/src/handler/tests/tests.pri +++ /dev/null @@ -1,24 +0,0 @@ -CONFIG *= console testcase -CONFIG -= app_bundle -QT -= gui -QT *= network testlib - -TESTS_DIR = $$PWD -SRC_DIR = $$PWD/.. -CPP_DIR = $$PWD/../../cpp -QZMQ_DIR = $$CPP_DIR/qzmq - -LIBS += -L$$SRC_DIR -lpushpin-handler -PRE_TARGETDEPS += $$PWD/../libpushpin-handler.a - -LIBS += -L$$PWD/../../cpp -lpushpin-cpp -PRE_TARGETDEPS += $$PWD/../../cpp/libpushpin-cpp.a - -include($$PWD/../../rust/lib.pri) -include($$PWD/../../../conf.pri) - -INCLUDEPATH += $$SRC_DIR -INCLUDEPATH += $$CPP_DIR -INCLUDEPATH += $$QZMQ_DIR/src - -DEFINES += NO_IRISNET diff --git a/src/handler/tests/tests.pro b/src/handler/tests/tests.pro deleted file mode 100644 index 73947988..00000000 --- a/src/handler/tests/tests.pro +++ /dev/null @@ -1,9 +0,0 @@ -TEMPLATE = subdirs - -SUBDIRS += \ - jsonpatchtest \ - instructtest \ - idformattest \ - publishformattest \ - publishitemtest \ - enginetest