/**
* A command for the 'main' routine
*
- * @author Roland Haeder <webmaster@ship-simu.org>
+ * @author Roland Haeder <webmaster@shipsimu.org>
* @version 0.0.0
- * @copyright Copyright (c) 2007, 2008 Roland Haeder, 2009, 2010 Hub Developer Team
+ * @copyright Copyright (c) 2007, 2008 Roland Haeder, 2009 - 2015 Hub Developer Team
* @license GNU GPL 3.0 or any newer version
- * @link http://www.ship-simu.org
+ * @link http://www.shipsimu.org
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* @param $resolverInstance An instance of a command resolver class
* @return $commandInstance An instance a prepared command class
*/
- public final static function createHubConsoleMainCommand (CommandResolver $resolverInstance) {
+ public static final function createHubConsoleMainCommand (CommandResolver $resolverInstance) {
// Get new instance
$commandInstance = new HubConsoleMainCommand();
// Get a registry and the application instance from it
$applicationInstance = Registry::getRegistry()->getInstance('app');
- // ----------------------- Bootstrapping phase ------------------------
- // Try to bootstrap the node and pass the request instance to it for
- // extra arguments which mostly override config entries or enable special
- // features within the hub (none is ready at this development stage)
- $this->debugOutput('BOOTSTRAP: Beginning with bootstrap...');
+ /*
+ * ----------------------- Bootstrapping phase ------------------------
+ * Try to bootstrap the node and pass the request instance to it for
+ * extra arguments which mostly override config entries or enable special
+ * features within the hub (none is ready at this development stage)
+ */
+ self::createDebugInstance(__CLASS__)->debugOutput('BOOTSTRAP: Beginning with bootstrap...');
$applicationInstance->getControllerInstance()->executeBootstrapFilters($requestInstance, $responseInstance);
- $this->debugOutput('BOOTSTRAP: Bootstrap finished.');
+ self::createDebugInstance(__CLASS__)->debugOutput('BOOTSTRAP: Bootstrap finished.');
// Get node instance
- $nodeInstance = Registry::getRegistry()->getInstance('node');
+ $nodeInstance = NodeObjectFactory::createNodeInstance();
// Add some node-specific filters, e.g. announcement
- $nodeInstance->addExtraHubFilters();
+ $nodeInstance->addExtraNodeFilters();
- // -------------------------- Hub activation --------------------------
- // Activates the hub by doing some final preparation steps and setting
- // the attribute $hubIsActive to true
- $nodeInstance->activateHub($requestInstance, $responseInstance);
+ /*
+ * -------------------------- Hub activation --------------------------
+ * Activates the node by doing some final preparation steps and setting
+ * the attribute $hubIsActive to TRUE.
+ */
+ $nodeInstance->activateNode($requestInstance, $responseInstance);
// Get task handler instance
- $handlerInstance = Registry::getRegistry()->getInstance('task');
+ $handlerInstance = Registry::getRegistry()->getInstance('task_handler');
// Debug message
- $this->debugOutput('MAIN: --- Entering main loop. ---');
-
- // ----------------------------- Main loop ----------------------------
- // This is the main loop. Queried calls should come back here very fast
- // so the whole application runs on nice speed. This while-loop goes
- // until the hub is no longer active or all tasks are killed.
- while (($nodeInstance->getIsActive()) && ($handlerInstance->hasTasksLeft())) {
+ self::createDebugInstance(__CLASS__)->debugOutput('MAIN: --- Entering main loop. ---');
+
+ /*
+ * ----------------------------- Main loop ----------------------------
+ * This is the main loop. Queried calls should come back here very fast
+ * so the whole application runs on nice speed. This while-loop goes
+ * until the hub is no longer active or all tasks are killed.
+ */
+ while (($nodeInstance->isNodeActive()) && ($handlerInstance->hasTasksLeft())) {
// Handle all tasks here
$handlerInstance->handleTasks();
} // END - while
// Debug message
- $this->debugOutput('MAIN: --- Leaving main loop. ---');
+ self::createDebugInstance(__CLASS__)->debugOutput('MAIN: --- Leaving main loop. ---');
}
/**
// Add pre filters
$controllerInstance->addPreFilter(ObjectFactory::createObjectByConfiguredName('node_php_requirements_filter'));
$controllerInstance->addPreFilter(ObjectFactory::createObjectByConfiguredName('node_initializer_filter'));
- $controllerInstance->addPreFilter(ObjectFactory::createObjectByConfiguredName('console_welcome_teaser_filter'));
+ $controllerInstance->addPreFilter(ObjectFactory::createObjectByConfiguredName('node_welcome_teaser_filter'));
// Add bootstrap filters
- $controllerInstance->addBootstrapFilter(ObjectFactory::createObjectByConfiguredName('hub_bootstrap_generate_hubid_filter'));
- $controllerInstance->addBootstrapFilter(ObjectFactory::createObjectByConfiguredName('hub_bootstrap_generate_sessionid_filter'));
- $controllerInstance->addBootstrapFilter(ObjectFactory::createObjectByConfiguredName('hub_bootstrap_restore_nodelist_filter'));
- $controllerInstance->addBootstrapFilter(ObjectFactory::createObjectByConfiguredName('hub_bootstrap_init_queues_filter'));
- $controllerInstance->addBootstrapFilter(ObjectFactory::createObjectByConfiguredName('hub_bootstrap_extra_bootstrap_filter'));
- $controllerInstance->addBootstrapFilter(ObjectFactory::createObjectByConfiguredName('hub_bootstrap_listener_pool_filter'));
+ $controllerInstance->addBootstrapFilter(ObjectFactory::createObjectByConfiguredName('node_bootstrap_generate_nodeid_filter'));
+ $controllerInstance->addBootstrapFilter(ObjectFactory::createObjectByConfiguredName('node_bootstrap_generate_sessionid_filter'));
+ $controllerInstance->addBootstrapFilter(ObjectFactory::createObjectByConfiguredName('node_bootstrap_generate_private_key_filter'));
+ $controllerInstance->addBootstrapFilter(ObjectFactory::createObjectByConfiguredName('node_bootstrap_extra_bootstrapping_filter'));
+ $controllerInstance->addBootstrapFilter(ObjectFactory::createObjectByConfiguredName('node_bootstrap_listener_pool_filter'));
- // Add hub activation filters
- $controllerInstance->addActivationFilter(ObjectFactory::createObjectByConfiguredName('hub_activation_task_handler_initializer_filter'));
+ // Add node activation filters
+ $controllerInstance->addActivationFilter(ObjectFactory::createObjectByConfiguredName('node_activation_task_handler_initializer_filter'));
// Add shutdown filters
- $controllerInstance->addShutdownFilter(ObjectFactory::createObjectByConfiguredName('hub_shutdown_flush_node_list_filter'));
- $controllerInstance->addShutdownFilter(ObjectFactory::createObjectByConfiguredName('hub_shutdown_deinit_queues_filter'));
- $controllerInstance->addShutdownFilter(ObjectFactory::createObjectByConfiguredName('hub_shutdown_task_handler_filter'));
+ $controllerInstance->addShutdownFilter(ObjectFactory::createObjectByConfiguredName('node_shutdown_flush_node_list_filter'));
+ $controllerInstance->addShutdownFilter(ObjectFactory::createObjectByConfiguredName('node_shutdown_task_handler_filter'));
- // This is the last generic filter
- $controllerInstance->addShutdownFilter(ObjectFactory::createObjectByConfiguredName('hub_shutdown_node_filter'));
+ // This is the last generic shutdown filter
+ $controllerInstance->addShutdownFilter(ObjectFactory::createObjectByConfiguredName('node_shutdown_node_filter'));
}
}