application/hub/main/states/cruncher/init/class_CruncherInitState.php svneol=native#text/plain
application/hub/main/states/cruncher/virgin/.htaccess svneol=native#text/plain
application/hub/main/states/cruncher/virgin/class_CruncherVirginState.php svneol=native#text/plain
+application/hub/main/states/dht/.htaccess -text svneol=unset#text/plain
+application/hub/main/states/dht/class_ svneol=native#text/plain
+application/hub/main/states/dht/class_BaseDhtState.php svneol=native#text/plain
+application/hub/main/states/dht/init/.htaccess -text svneol=unset#text/plain
+application/hub/main/states/dht/init/class_DhtInitState.php svneol=native#text/plain
+application/hub/main/states/dht/virgin/.htaccess -text svneol=unset#text/plain
+application/hub/main/states/dht/virgin/class_DhtVirginState.php svneol=native#text/plain
application/hub/main/states/generic/.htaccess -text svneol=unset#text/plain
application/hub/main/states/hub/.htaccess -text svneol=unset#text/plain
application/hub/main/states/node/.htaccess -text svneol=unset#text/plain
// CFG: NODE-ANNOUNCEMENT-COMPLETED-STATE-CLASS
$cfg->setConfigEntry('node_announcement_completed_state_class', 'NodeAnnouncementCompletedState');
+// CFG: DHT-INIT-STATE-CLASS
+$cfg->setConfigEntry('dht_init_state_class', 'DhtInitState');
+
+// CFG: DHT-VIRGIN-STATE-CLASS
+$cfg->setConfigEntry('dht_virgin_state_class', 'DhtVirginState');
+
// CFG: NETWORK-PACKAGE-CLASS
$cfg->setConfigEntry('network_package_class', 'NetworkPackage');
* @return void
*/
function insertNodeList (array $nodeList);
+
+ /**
+ * Updates/refreshes DHT data (e.g. status).
+ *
+ * @return void
+ */
+ function updateDhtData ();
}
// [EOF]
*/
DhtStateFactory::createDhtStateInstanceByName('init', $this);
}
+
+ /**
+ * Updates/refreshes DHT data (e.g. status).
+ *
+ * @return void
+ * @todo Find more to do here
+ */
+ public function updateDhtData () {
+ // Set some dummy configuration entries, e.g. dht_status
+ $this->getConfigInstance()->setConfigEntry('dht_status', $this->getStateInstance()->getStateName());
+ }
}
// [EOF]
--- /dev/null
+Deny from all
--- /dev/null
+<?php
+/**
+ * A ??? dht state class
+ *
+ * @author Roland Haeder <webmaster@ship-simu.org>
+ * @version 0.0.0
+ * @copyright Copyright (c) 2007, 2008 Roland Haeder, 2009 - 2012 Hub Developer Team
+ * @license GNU GPL 3.0 or any newer version
+ * @link http://www.ship-simu.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
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+class Dht???State extends BaseDhtState implements Stateable {
+ /**
+ * Protected constructor
+ *
+ * @return void
+ */
+ protected function __construct () {
+ // Call parent constructor
+ parent::__construct(__CLASS__);
+
+ // Set state name
+ $this->setStateName('!!!');
+ }
+
+ /**
+ * Creates an instance of this class
+ *
+ * @param $dhtInstance An instance of a Distributable class
+ * @return $stateInstance An instance of a Stateable class
+ */
+ public final static function createDht???State (Distributable $dhtInstance) {
+ // Get new instance
+ $stateInstance = new Dht???State();
+
+ // Debug message
+ self::createDebugInstance(__CLASS__)->debugOutput('DHT-STATE: Has changed from ' . $dhtInstance->getPrintableState() . ' to ' . $stateInstance->getStateName() . '.');
+
+ // Set the dht instance
+ $stateInstance->setDhtInstance($dhtInstance);
+
+ // Return the prepared instance
+ return $stateInstance;
+ }
+}
+
+// [EOF]
+?>
--- /dev/null
+<?php
+/**
+ * A general DHT state class
+ *
+ * @author Roland Haeder <webmaster@ship-simu.org>
+ * @version 0.0.0
+ * @copyright Copyright (c) 2007, 2008 Roland Haeder, 2009 - 2012 Hub Developer Team
+ * @license GNU GPL 3.0 or any newer version
+ * @link http://www.ship-simu.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
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+class BaseDhtState extends BaseState {
+ /**
+ * Protected constructor
+ *
+ * @param $className Name of the class
+ * @return void
+ */
+ protected function __construct ($className) {
+ // Call parent constructor
+ parent::__construct($className);
+ }
+}
+
+// [EOF]
+?>
--- /dev/null
+Deny from all
--- /dev/null
+<?php
+/**
+ * A Init dht state class
+ *
+ * @author Roland Haeder <webmaster@ship-simu.org>
+ * @version 0.0.0
+ * @copyright Copyright (c) 2007, 2008 Roland Haeder, 2009 - 2012 Hub Developer Team
+ * @license GNU GPL 3.0 or any newer version
+ * @link http://www.ship-simu.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
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+class DhtInitState extends BaseDhtState implements Stateable {
+ /**
+ * Protected constructor
+ *
+ * @return void
+ */
+ protected function __construct () {
+ // Call parent constructor
+ parent::__construct(__CLASS__);
+
+ // Set state name
+ $this->setStateName('init');
+ }
+
+ /**
+ * Creates an instance of this class
+ *
+ * @param $dhtInstance An instance of a Distributable class
+ * @return $stateInstance An instance of a Stateable class
+ */
+ public final static function createDhtInitState (Distributable $dhtInstance) {
+ // Get new instance
+ $stateInstance = new DhtInitState();
+
+ // Debug message
+ self::createDebugInstance(__CLASS__)->debugOutput('DHT-STATE: Has changed from ' . $dhtInstance->getPrintableState() . ' to ' . $stateInstance->getStateName() . '.');
+
+ // Set the dht instance
+ $stateInstance->setDhtInstance($dhtInstance);
+
+ // Return the prepared instance
+ return $stateInstance;
+ }
+
+ /**
+ * The DHT has been initialized. This means that the state can be changed
+ * to the next one: virgin.
+ *
+ * @return void
+ */
+ public function dhtHasInitialized () {
+ // Create a new instance
+ DhtStateFactory::createDhtStateInstanceByName('virgin', $this->getDhtInstance());
+ }
+}
+
+// [EOF]
+?>
--- /dev/null
+Deny from all
--- /dev/null
+<?php
+/**
+ * A Virgin dht state class
+ *
+ * @author Roland Haeder <webmaster@ship-simu.org>
+ * @version 0.0.0
+ * @copyright Copyright (c) 2007, 2008 Roland Haeder, 2009 - 2012 Hub Developer Team
+ * @license GNU GPL 3.0 or any newer version
+ * @link http://www.ship-simu.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
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+class DhtVirginState extends BaseDhtState implements Stateable {
+ /**
+ * Protected constructor
+ *
+ * @return void
+ */
+ protected function __construct () {
+ // Call parent constructor
+ parent::__construct(__CLASS__);
+
+ // Set state name
+ $this->setStateName('virgin');
+ }
+
+ /**
+ * Creates an instance of this class
+ *
+ * @param $dhtInstance An instance of a Distributable class
+ * @return $stateInstance An instance of a Stateable class
+ */
+ public final static function createDhtVirginState (Distributable $dhtInstance) {
+ // Get new instance
+ $stateInstance = new DhtVirginState();
+
+ // Debug message
+ self::createDebugInstance(__CLASS__)->debugOutput('DHT-STATE: Has changed from ' . $dhtInstance->getPrintableState() . ' to ' . $stateInstance->getStateName() . '.');
+
+ // Set the dht instance
+ $stateInstance->setDhtInstance($dhtInstance);
+
+ // Return the prepared instance
+ return $stateInstance;
+ }
+}
+
+// [EOF]
+?>