Handler libraries architecture¶
Handlers are build on rows of modules:
Applications or launchers that get the request and choose the right type (Main, AuthBasic, ZimbraPreAuth,…) and launch it (may not inherits from other Handler::* modules)
Wrappers that call “type” library and platform “Main” (may all inherits from Platform::Main
Library types if needed (may inherit from Main)
Main: the main handler library
Since version 2.1, wrappers are autogenerated when undefined. Generated code is simply:
package Lemonldap::NG::Handler::Platform::Type;
use base 'Lemonldap::NG::Handler::Lib::Type',
'Lemonldap::NG::Handler::Platform::Main';
1;
Overview of Handler packages¶
Usage |
Platform |
Wrapper |
Types |
Main |
---|---|---|---|---|
Apache2 protection |
ApacheMP2 |
ApacheMP2::<type> |
Lib::<type> |
Main |
Plack servers protection or Nginx/SSOaaS FastCGI/uWSGI server |
Server |
Server::<type> |
||
PSGI |
PSGI::<type> |
Types are:
(Main): link between Main and platform
SecureToken (not available for PSGI)
Service Token (server to server)
ZimbraPreAuth (not available for PSGI)