protected function deployApplications()
{
// load the container and initial context instance
$container = $this->getContainer();
// load the context instances for this container
$contextInstances = $this->loadContextInstances();
// gather all the deployed web applications
foreach ($contextInstances as $context) {
// try to load the application factory
if ($applicationFactory = $context->getFactory()) {
// use the factory if available
$applicationFactory::visit($container, $context);
} else {
// if not, try to instantiate the application directly
$applicationType = $context->getType();
$container->addApplication(new $applicationType($context));
}
// log a message that the application has been initialized and started
$this->getInitialContext()->getSystemLogger()->info(sprintf('Successfully initialized and started application %s', $context->getName()));
}
}