allow a request to be processed in a job

Now we allow a request to be passed into a job queue,
and after the job finishes the request is passed into
a controller again. In order to achieve this we have
a requests queue in System, when we put a request
to the job this Request structure is preserved in the
queue and for a new request a new Request is added to
the queue.

while here:
- remove App::Lock()/Unlock(), use scoped locking
- fix: Plugin now has a Call method which takes ModelConnector
  and a logger (used in multithreaded environment)
- BaseThread has a main_model_connector pointer
  to the main (from the main thread) model connector
- the FastCGI structure fcgi_request moved from App to Request
- some methods for handling requests moved from App to Request
- small refactoring in main.cpp
- add Http class (a http client)
This commit is contained in:
2022-07-25 14:21:21 +02:00
parent b2d92b85a0
commit 979ef907fe
65 changed files with 7018 additions and 4437 deletions

View File

@@ -94,33 +94,15 @@
./init.o: ../../../../winix/winixd/core/textstream.h
./init.o: ../../../../winix/winixd/models/winixmodel.h
./init.o: ../../../../winix/winixd/core/header.h
./init.o: ../../../../winix/winixd/core/system.h
./init.o: ../../../../winix/winixd/core/job.h
./init.o: ../../../../winix/winixd/core/basethread.h
./init.o: ../../../../winix/winixd/core/winixmodeldeprecated.h
./init.o: ../../../../winix/winixd/core/compress.h
./init.o: ../../../../winix/winixd/core/plugin.h
./init.o: ../../../../winix/winixd/core/pluginmsg.h
./init.o: ../../../../winix/winixd/core/plugindata.h
./init.o: ../../../../winix/winixd/core/dirs.h
./init.o: ../../../../winix/winixd/core/dircontainer.h
./init.o: ../../../../winix/winixd/core/request.h
./init.o: ../../../../winix/winixd/core/mounts.h
./init.o: ../../../../winix/winixd/core/winixmodeldeprecated.h
./init.o: ../../../../winix/winixd/core/mount.h
./init.o: ../../../../winix/winixd/core/mounts.h
./init.o: ../../../../winix/winixd/core/request.h
./init.o: ../../../../winix/winixd/core/mountparser.h
./init.o: ../../../../winix/winixd/core/crypt.h
./init.o: ../../../../winix/winixd/core/run.h
./init.o: ../../../../winix/winixd/core/users.h
./init.o: ../../../../winix/winixd/core/ugcontainer.h
./init.o: ../../../../winix/winixd/core/lastcontainer.h
./init.o: ../../../../winix/winixd/core/cur.h
./init.o: ../../../../winix/winixd/core/session.h
./init.o: ../../../../winix/winixd/core/rebus.h
./init.o: ../../../../winix/winixd/core/ipban.h
./init.o: ../../../../winix/winixd/core/groups.h
./init.o: ../../../../winix/winixd/core/loadavg.h
./init.o: ../../../../winix/winixd/core/image.h
./init.o: ../../../../winix/winixd/core/threadmanager.h
./init.o: ../../../../winix/winixd/models/winixmodelconnector.h
./init.o: ../../../../winix/winixd/notify/notify.h
./init.o: ../../../../winix/winixd/core/winixmodeldeprecated.h
./init.o: ../../../../winix/winixd/notify/notifypool.h
@@ -130,21 +112,41 @@
./init.o: ../../../../winix/winixd/core/basethread.h
./init.o: ../../../../winix/winixd/notify/templatesnotify.h
./init.o: ../../../../winix/winixd/core/users.h
./init.o: ../../../../winix/winixd/core/timezones.h
./init.o: ../../../../winix/winixd/core/timezone.h
./init.o: ../../../../winix/winixd/core/ugcontainer.h
./init.o: ../../../../winix/winixd/core/lastcontainer.h
./init.o: ../../../../winix/winixd/core/cur.h
./init.o: ../../../../winix/winixd/core/session.h
./init.o: ../../../../winix/winixd/core/rebus.h
./init.o: ../../../../winix/winixd/core/ipban.h
./init.o: ../../../../winix/winixd/core/winixrequest.h
./init.o: ../../../../winix/winixd/core/winixsystem.h
./init.o: ../../../../winix/winixd/core/system.h
./init.o: ../../../../winix/winixd/core/job.h
./init.o: ../../../../winix/winixd/core/basethread.h
./init.o: ../../../../winix/winixd/core/jobtask.h
./init.o: ../../../../winix/winixd/core/loadavg.h
./init.o: ../../../../winix/winixd/core/dirs.h
./init.o: ../../../../winix/winixd/core/dircontainer.h
./init.o: ../../../../winix/winixd/core/crypt.h
./init.o: ../../../../winix/winixd/core/run.h
./init.o: ../../../../winix/winixd/core/users.h
./init.o: ../../../../winix/winixd/core/groups.h
./init.o: ../../../../winix/winixd/core/image.h
./init.o: ../../../../winix/winixd/core/threadmanager.h
./init.o: ../../../../winix/winixd/models/winixmodelconnector.h
./init.o: ../../../../winix/winixd/core/timezones.h
./init.o: ../../../../winix/winixd/core/timezone.h
./init.o: ../../../../winix/winixd/core/cur.h
./init.o: ../../../../winix/winixd/core/sessionmanager.h
./init.o: ../../../../winix/winixd/core/sessioncontainer.h
./init.o: ../../../../winix/winixd/core/ipbancontainer.h
./init.o: ../../../../winix/winixd/core/system.h
./init.o: ../../../../winix/winixd/core/sessionidmanager.h
./init.o: ../../../../tito/src/base64.h ../../../../tito/src/aes.h
./init.o: ../../../../winix/winixd/core/slog.h
./init.o: ../../../../winix/winixd/functions/functions.h
./init.o: ../../../../winix/winixd/functions/functionbase.h
./init.o: ../../../../winix/winixd/functions/functionparser.h
./init.o: ../../../../winix/winixd/core/dirs.h
./init.o: ../../../../winix/winixd/functions/account.h
./init.o: ../../../../winix/winixd/functions/adduser.h
./init.o: ../../../../winix/winixd/functions/cat.h
@@ -283,33 +285,15 @@
./seo.o: ../../../../winix/winixd/core/textstream.h
./seo.o: ../../../../winix/winixd/models/winixmodel.h
./seo.o: ../../../../winix/winixd/core/header.h
./seo.o: ../../../../winix/winixd/core/system.h
./seo.o: ../../../../winix/winixd/core/job.h
./seo.o: ../../../../winix/winixd/core/basethread.h
./seo.o: ../../../../winix/winixd/core/winixmodeldeprecated.h
./seo.o: ../../../../winix/winixd/core/compress.h
./seo.o: ../../../../winix/winixd/core/plugin.h
./seo.o: ../../../../winix/winixd/core/pluginmsg.h
./seo.o: ../../../../winix/winixd/core/plugindata.h
./seo.o: ../../../../winix/winixd/core/dirs.h
./seo.o: ../../../../winix/winixd/core/dircontainer.h
./seo.o: ../../../../winix/winixd/core/request.h
./seo.o: ../../../../winix/winixd/core/mounts.h
./seo.o: ../../../../winix/winixd/core/winixmodeldeprecated.h
./seo.o: ../../../../winix/winixd/core/mount.h
./seo.o: ../../../../winix/winixd/core/mounts.h
./seo.o: ../../../../winix/winixd/core/request.h
./seo.o: ../../../../winix/winixd/core/mountparser.h
./seo.o: ../../../../winix/winixd/core/crypt.h
./seo.o: ../../../../winix/winixd/core/run.h
./seo.o: ../../../../winix/winixd/core/users.h
./seo.o: ../../../../winix/winixd/core/ugcontainer.h
./seo.o: ../../../../winix/winixd/core/lastcontainer.h
./seo.o: ../../../../winix/winixd/core/cur.h
./seo.o: ../../../../winix/winixd/core/session.h
./seo.o: ../../../../winix/winixd/core/rebus.h
./seo.o: ../../../../winix/winixd/core/ipban.h
./seo.o: ../../../../winix/winixd/core/groups.h
./seo.o: ../../../../winix/winixd/core/loadavg.h
./seo.o: ../../../../winix/winixd/core/image.h
./seo.o: ../../../../winix/winixd/core/threadmanager.h
./seo.o: ../../../../winix/winixd/models/winixmodelconnector.h
./seo.o: ../../../../winix/winixd/notify/notify.h
./seo.o: ../../../../winix/winixd/core/winixmodeldeprecated.h
./seo.o: ../../../../winix/winixd/notify/notifypool.h
@@ -319,21 +303,41 @@
./seo.o: ../../../../winix/winixd/core/basethread.h
./seo.o: ../../../../winix/winixd/notify/templatesnotify.h
./seo.o: ../../../../winix/winixd/core/users.h
./seo.o: ../../../../winix/winixd/core/timezones.h
./seo.o: ../../../../winix/winixd/core/timezone.h
./seo.o: ../../../../winix/winixd/core/ugcontainer.h
./seo.o: ../../../../winix/winixd/core/lastcontainer.h
./seo.o: ../../../../winix/winixd/core/cur.h
./seo.o: ../../../../winix/winixd/core/session.h
./seo.o: ../../../../winix/winixd/core/rebus.h
./seo.o: ../../../../winix/winixd/core/ipban.h
./seo.o: ../../../../winix/winixd/core/winixrequest.h
./seo.o: ../../../../winix/winixd/core/winixsystem.h
./seo.o: ../../../../winix/winixd/core/system.h
./seo.o: ../../../../winix/winixd/core/job.h
./seo.o: ../../../../winix/winixd/core/basethread.h
./seo.o: ../../../../winix/winixd/core/jobtask.h
./seo.o: ../../../../winix/winixd/core/loadavg.h
./seo.o: ../../../../winix/winixd/core/dirs.h
./seo.o: ../../../../winix/winixd/core/dircontainer.h
./seo.o: ../../../../winix/winixd/core/crypt.h
./seo.o: ../../../../winix/winixd/core/run.h
./seo.o: ../../../../winix/winixd/core/users.h
./seo.o: ../../../../winix/winixd/core/groups.h
./seo.o: ../../../../winix/winixd/core/image.h
./seo.o: ../../../../winix/winixd/core/threadmanager.h
./seo.o: ../../../../winix/winixd/models/winixmodelconnector.h
./seo.o: ../../../../winix/winixd/core/timezones.h
./seo.o: ../../../../winix/winixd/core/timezone.h
./seo.o: ../../../../winix/winixd/core/cur.h
./seo.o: ../../../../winix/winixd/core/sessionmanager.h
./seo.o: ../../../../winix/winixd/core/sessioncontainer.h
./seo.o: ../../../../winix/winixd/core/ipbancontainer.h
./seo.o: ../../../../winix/winixd/core/system.h
./seo.o: ../../../../winix/winixd/core/sessionidmanager.h
./seo.o: ../../../../tito/src/base64.h ../../../../tito/src/aes.h
./seo.o: ../../../../winix/winixd/core/slog.h
./seo.o: ../../../../winix/winixd/functions/functions.h
./seo.o: ../../../../winix/winixd/functions/functionbase.h
./seo.o: ../../../../winix/winixd/functions/functionparser.h
./seo.o: ../../../../winix/winixd/core/dirs.h
./seo.o: ../../../../winix/winixd/functions/account.h
./seo.o: ../../../../winix/winixd/functions/adduser.h
./seo.o: ../../../../winix/winixd/functions/cat.h