/** * The main method that creates new instances in a separate context. * * @param \AppserverIo\Psr\Application\ApplicationInterface $application The application instance to register the class loader with * @param \AppserverIo\Appserver\Core\Api\Node\ManagerNodeInterface $managerConfiguration The manager configuration * * @return void */ public static function visit(ApplicationInterface $application, ManagerNodeInterface $managerConfiguration) { // initialize the storage instances $authenticators = new StackableStorage(); $mappings = new StackableStorage(); // initialize the authentication manager $authenticationManager = new StandardAuthenticationManager(); $authenticationManager->injectMappings($mappings); $authenticationManager->injectApplication($application); $authenticationManager->injectAuthenticators($authenticators); $authenticationManager->injectManagerConfiguration($managerConfiguration); // attach the instance $application->addManager($authenticationManager, $managerConfiguration); }