epic-s6ts
[kivitendo-erp.git] / dispatcher.fpl
index a4083c1..9b7c98b 100755 (executable)
@@ -3,16 +3,21 @@
 use strict;
 
 BEGIN {
-  unshift @INC, "modules/override"; # Use our own versions of various modules (e.g. YAML).
-  push    @INC, "modules/fallback"; # Only use our own versions of modules if there's no system version.
-  push    @INC, "SL";               # FCGI won't find modules that are not properly named. Help it by inclduging SL
+  use FindBin;
+
+  unshift(@INC, $FindBin::Bin . '/modules/override'); # Use our own versions of various modules (e.g. YAML).
+  push   (@INC, $FindBin::Bin);                       # '.' will be removed from @INC soon.
+  push   (@INC, $FindBin::Bin . '/modules/fallback'); # Only use our own versions of modules if there's no system version.
 }
 
-use FCGI;
 use SL::Dispatcher;
+use SL::FCGIFixes;
+use SL::LXDebug;
 
-SL::Dispatcher::pre_startup();
-my $request = FCGI::Request();
-SL::Dispatcher::handle_request('FastCGI') while $request->Accept() >= 0;
+our $dispatcher = SL::Dispatcher->new('FastCGI');
+$dispatcher->pre_startup_setup;
+SL::FCGIFixes::apply_fixes();
+$dispatcher->pre_startup_checks;
+$dispatcher->handle_all_requests;
 
 1;