]> git.mxchange.org Git - hub.git/commitdiff
Continued rewrite:
authorRoland Haeder <roland@mxchange.org>
Sun, 11 Jan 2015 23:53:19 +0000 (00:53 +0100)
committerRoland Haeder <roland@mxchange.org>
Sun, 11 Jan 2015 23:54:09 +0000 (00:54 +0100)
- New base class added for IPv4 protocol handler.
- Some improvements here and there
- TODOs.txt updated

Signed-off-by: Roland Haeder <roland@mxchange.org>
application/hub/main/handler/protocol/ipv4/.htaccess [new file with mode: 0644]
application/hub/main/handler/protocol/ipv4/class_ [new file with mode: 0644]
application/hub/main/handler/protocol/ipv4/class_BaseIpV4ProtocolHandler.php [new file with mode: 0644]
application/hub/main/handler/protocol/ipv4/tcp/.htaccess [new file with mode: 0644]
application/hub/main/handler/protocol/ipv4/tcp/class_TcpProtocolHandler.php [new file with mode: 0644]
application/hub/main/handler/protocol/tcp/.htaccess [deleted file]
application/hub/main/handler/protocol/tcp/class_TcpProtocolHandler.php [deleted file]
application/hub/main/tags/package/class_PackageTags.php
docs/TODOs.txt

diff --git a/application/hub/main/handler/protocol/ipv4/.htaccess b/application/hub/main/handler/protocol/ipv4/.htaccess
new file mode 100644 (file)
index 0000000..3a42882
--- /dev/null
@@ -0,0 +1 @@
+Deny from all
diff --git a/application/hub/main/handler/protocol/ipv4/class_ b/application/hub/main/handler/protocol/ipv4/class_
new file mode 100644 (file)
index 0000000..770d443
--- /dev/null
@@ -0,0 +1,53 @@
+<?php
+/**
+ * A ??? protocol handler
+ *
+ * @author             Roland Haeder <webmaster@ship-simu.org>
+ * @version            0.0.0
+ * @copyright  Copyright (c) 2007, 2008 Roland Haeder, 2009 - 2014 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 ???ProtocolHandler extends BaseProtocolHandler implements HandleableProtocol, Registerable {
+       /**
+        * Protected constructor
+        *
+        * @return      void
+        */
+       protected function __construct () {
+               // Call parent constructor
+               parent::__construct(__CLASS__);
+
+               // Set handler name
+               $this->setHandlerName('|||_protocol');
+       }
+
+       /**
+        * Creates an instance of this class
+        *
+        * @return      $handlerInstance        An instance of a HandleableMessage class
+        */
+       public final static function create???ProtocolHandler () {
+               // Get new instance
+               $handlerInstance = new ???ProtocolHandler();
+
+               // Return the prepared instance
+               return $handlerInstance;
+       }
+}
+
+// [EOF]
+?>
diff --git a/application/hub/main/handler/protocol/ipv4/class_BaseIpV4ProtocolHandler.php b/application/hub/main/handler/protocol/ipv4/class_BaseIpV4ProtocolHandler.php
new file mode 100644 (file)
index 0000000..601dc7c
--- /dev/null
@@ -0,0 +1,38 @@
+<?php
+/**
+ * A general handler for IPv4 protocols such as TCP, UDP and others.
+ *
+ * @author             Roland Haeder <webmaster@shipsimu.org>
+ * @version            0.0.0
+ * @copyright  Copyright (c) 2007, 2008 Roland Haeder, 2009 - 2014 Hub Developer Team
+ * @license            GNU GPL 3.0 or any newer version
+ * @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
+ * 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 BaseIpV4ProtocolHandler extends BaseProtocolHandler {
+       /**
+        * Protected constructor
+        *
+        * @param       $className      Name of the class
+        * @return      void
+        */
+       protected function __construct ($className) {
+               // Call parent constructor
+               parent::__construct($className);
+       }
+}
+
+// [EOF]
+?>
diff --git a/application/hub/main/handler/protocol/ipv4/tcp/.htaccess b/application/hub/main/handler/protocol/ipv4/tcp/.htaccess
new file mode 100644 (file)
index 0000000..3a42882
--- /dev/null
@@ -0,0 +1 @@
+Deny from all
diff --git a/application/hub/main/handler/protocol/ipv4/tcp/class_TcpProtocolHandler.php b/application/hub/main/handler/protocol/ipv4/tcp/class_TcpProtocolHandler.php
new file mode 100644 (file)
index 0000000..91f1786
--- /dev/null
@@ -0,0 +1,53 @@
+<?php
+/**
+ * A TCP protocol handler (IPv4)
+ *
+ * @author             Roland Haeder <webmaster@ship-simu.org>
+ * @version            0.0.0
+ * @copyright  Copyright (c) 2007, 2008 Roland Haeder, 2009 - 2014 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 TcpProtocolHandler extends BaseIpV4ProtocolHandler implements HandleableProtocol, Registerable {
+       /**
+        * Protected constructor
+        *
+        * @return      void
+        */
+       protected function __construct () {
+               // Call parent constructor
+               parent::__construct(__CLASS__);
+
+               // Set handler name
+               $this->setHandlerName('tcp_protocol');
+       }
+
+       /**
+        * Creates an instance of this class
+        *
+        * @return      $handlerInstance        An instance of a HandleableMessage class
+        */
+       public final static function createTcpProtocolHandler () {
+               // Get new instance
+               $handlerInstance = new TcpProtocolHandler();
+
+               // Return the prepared instance
+               return $handlerInstance;
+       }
+}
+
+// [EOF]
+?>
diff --git a/application/hub/main/handler/protocol/tcp/.htaccess b/application/hub/main/handler/protocol/tcp/.htaccess
deleted file mode 100644 (file)
index 3a42882..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Deny from all
diff --git a/application/hub/main/handler/protocol/tcp/class_TcpProtocolHandler.php b/application/hub/main/handler/protocol/tcp/class_TcpProtocolHandler.php
deleted file mode 100644 (file)
index bdbdd3e..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-<?php
-/**
- * A Tcp protocol handler (IPv4)
- *
- * @author             Roland Haeder <webmaster@ship-simu.org>
- * @version            0.0.0
- * @copyright  Copyright (c) 2007, 2008 Roland Haeder, 2009 - 2014 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 TcpProtocolHandler extends BaseProtocolHandler implements HandleableProtocol, Registerable {
-       /**
-        * Protected constructor
-        *
-        * @return      void
-        */
-       protected function __construct () {
-               // Call parent constructor
-               parent::__construct(__CLASS__);
-
-               // Set handler name
-               $this->setHandlerName('tcp_protocol');
-       }
-
-       /**
-        * Creates an instance of this class
-        *
-        * @return      $handlerInstance        An instance of a HandleableMessage class
-        */
-       public final static function createTcpProtocolHandler () {
-               // Get new instance
-               $handlerInstance = new TcpProtocolHandler();
-
-               // Return the prepared instance
-               return $handlerInstance;
-       }
-}
-
-// [EOF]
-?>
index 242511c8fd01b86e937795f852e0e2fdadeac9f3..5bef93ac50851eb2a1d7b899c8fa34149ad4382c 100644 (file)
@@ -132,8 +132,11 @@ class PackageTags extends BaseTags implements Tagable {
                        // Get an array from this tag
                        $entry = $objectRegistryInstance->getArrayFromKey(XmlObjectRegistryTemplateEngine::OBJECT_TYPE_DATA_NAME, $tag);
 
-                       // If the array is empty, the entry is invalid!
-                       if ((count($entry) == 0) || (!isset($entry[XmlObjectRegistryTemplateEngine::OBJECT_TYPE_DATA_PROTOCOL])) || (!isset($entry[XmlObjectRegistryTemplateEngine::OBJECT_TYPE_DATA_RECIPIENT_TYPE]))) {
+                       /*
+                        * If it is no array or the array is empty or an entry is missing
+                        * the entry is invalid.
+                        */
+                       if ((!is_array($entry)) || (count($entry) == 0) || (!isset($entry[XmlObjectRegistryTemplateEngine::OBJECT_TYPE_DATA_PROTOCOL])) || (!isset($entry[XmlObjectRegistryTemplateEngine::OBJECT_TYPE_DATA_RECIPIENT_TYPE]))) {
                                // Invalid entry found
                                throw new InvalidTagException(array($this, $tag), self::EXCEPTION_INVALID_TAG);
                        } // END - if
index 8ef8fa236e9a62e2d56532bbb7e2f687ffb34518..54a3de7530452e73d333f9c843414cb0b5a8c3c4 100644 (file)
@@ -1,8 +1,9 @@
 ### WARNING: THIS FILE IS AUTO-GENERATED BY ./todo-builder.sh ###
 ### DO NOT EDIT THIS FILE. ###
-./application/hub/config.php:757:// @TODO This and the next value is very static again
-./application/hub/config.php:821:// @TODO This is very static, rewrite it to more flexible
+./application/hub/config.php:775:// @TODO This and the next value is very static again
+./application/hub/config.php:839:// @TODO This is very static, rewrite it to more flexible
 ./application/hub/interfaces/apt-proxy/class_AptProxy.php:10: * @todo          We need to find a better name for this interface
+./application/hub/interfaces/blocks/class_Minable.php:10: * @todo              We need to find a better name for this interface
 ./application/hub/interfaces/chat/class_Chatter.php:10: * @todo                We need to find a better name for this interface
 ./application/hub/interfaces/crawler/class_Crawler.php:10: * @todo             We need to find a better name for this interface
 ./application/hub/interfaces/cruncher/class_CruncherHelper.php:10: * @todo             We need to find a better name for this interface
 ./application/hub/main/dht/class_BaseDht.php:253:       * @todo        Switch flag 'accept_bootstrap'
 ./application/hub/main/dht/class_BaseDht.php:86:        * @todo        Find more to do here
 ./application/hub/main/dht/node/class_NodeDhtFacade.php:61:     * @todo        Does this data need to be enriched with more meta data?
-./application/hub/main/discovery/package/class_PackageRecipientDiscovery.php:86:        * @todo        Add some validation of recipient field, e.g. ip:port is found
-./application/hub/main/discovery/package/class_PackageRecipientDiscovery.php:87:        * @todo        The if() does only check for TCP, not UDP, e.g. try to get a $handlerInstance here
+./application/hub/main/discovery/protocol/class_ProtocolDiscovery.php:71:              // @TODO Add some validation here???
+./application/hub/main/discovery/recipient/package/class_PackageRecipientDiscovery.php:86:      * @todo        Add some validation of recipient field, e.g. an Universal Node Locator is found
+./application/hub/main/discovery/recipient/package/class_PackageRecipientDiscovery.php:87:      * @todo        The if() does only check for TCP, not UDP, e.g. try to get a $handlerInstance here
+./application/hub/main/factories/handler/class_ProtocolHandlerFactory.php:10: * @todo          Unfinished stuff
 ./application/hub/main/factories/socket/class_SocketFactory.php:10: * @todo            Find an interface for hub helper
 ./application/hub/main/filter/apt-proxy/class_AptProxyInitializationFilter.php:54:      * @todo        0% done
 ./application/hub/main/filter/apt-proxy/class_AptProxyPhpRequirementsFilter.php:55:     * @todo        Add more test and try to add an extra message to the thrown exception
 ./application/hub/main/filter/task/cruncher/class_CruncherTaskHandlerInitializerFilter.php:55:  * @todo        5% done
 ./application/hub/main/filter/task/miner/class_MinerTaskHandlerInitializerFilter.php:55:        * @todo        5% done
 ./application/hub/main/filter/task/node/class_NodeTaskHandlerInitializerFilter.php:55:  * @todo        Maybe some more tasks needs to be added?
-./application/hub/main/handler/answer-status/announcement/class_AnnouncementAnswerOkayHandler.php:64:   * @todo        Do some more here: Handle karma, et cetera?
+./application/hub/main/handler/answer-status/announcement/class_AnnouncementAnswerOkayHandler.php:63:   * @todo        Do some more here: Handle karma, et cetera?
 ./application/hub/main/handler/answer-status/requests/class_RequestNodeListAnswerOkayHandler.php:103:   * @todo        0% done
 ./application/hub/main/handler/answer-status/requests/class_RequestNodeListAnswerOkayHandler.php:115:   * @todo        0% done
 ./application/hub/main/handler/answer-status/requests/class_RequestNodeListAnswerOkayHandler.php:63:    * @todo        Do some more here: Handle karma, et cetera?
 ./application/hub/main/handler/class_BaseHandler.php:66:        * @todo        Rewrite this to use DHT
-./application/hub/main/handler/message-types/answer/class_NodeMessageDhtBootstrapAnswerHandler.php:93:  * @todo        ~30% done
+./application/hub/main/handler/message-types/answer/class_NodeMessageDhtBootstrapAnswerHandler.php:90:  * @todo        ~30% done
 ./application/hub/main/handler/message-types/self-connect/class_NodeMessageSelfConnectHandler.php:71:                  // @TODO Throw an exception here instead of dying
 ./application/hub/main/handler/network/class_BaseRawDataHandler.php:148:        * @todo        This method will be moved to a better place
 ./application/hub/main/handler/network/udp/class_UdpRawDataHandler.php:58:      * @todo        0%
 ./application/hub/main/handler/tasks/class_TaskHandler.php:139:                // @TODO Messurement can be added around this call
+./application/hub/main/helper/class_BaseHubSystemHelper.php:87:         * @todo        0% done
 ./application/hub/main/helper/connection/class_BaseConnectionHelper.php:204:                   // @TODO Move this to the socket error handler
 ./application/hub/main/helper/connection/class_BaseConnectionHelper.php:232:    * @todo        Rewrite the while() loop to a iterator to not let the software stay very long here
 ./application/hub/main/helper/connection/tcp/class_TcpConnectionHelper.php:10: * @todo         Find an interface for hub helper
-./application/hub/main/helper/connection/tcp/class_TcpConnectionHelper.php:142:         * @todo        We may want to implement a filter for ease notification of other objects like our pool
+./application/hub/main/helper/connection/tcp/class_TcpConnectionHelper.php:110:                                // @TODO Rewrite this test for UNLs
+./application/hub/main/helper/connection/tcp/class_TcpConnectionHelper.php:117:                                // @TODO Rewrite this test for UNLs
+./application/hub/main/helper/connection/tcp/class_TcpConnectionHelper.php:147:         * @todo        We may want to implement a filter for ease notification of other objects like our pool
 ./application/hub/main/helper/connection/tcp/class_TcpConnectionHelper.php:49:  * @todo        $errorCode/-Message are now in handleSocketError()'s call-back methods
 ./application/hub/main/helper/connection/tcp/class_TcpConnectionHelper.php:89:         // @TODO The whole resolving part should be moved out and made more configurable
 ./application/hub/main/helper/connection/udp/class_UdpConnectionHelper.php:10: * @todo         Find an interface for hub helper
 ./application/hub/main/miner/chash/class_HubChashMiner.php:138:         * @todo        0% done
 ./application/hub/main/miner/chash/class_HubChashMiner.php:98:         // @TODO Implement this method
 ./application/hub/main/miner/class_BaseHubMiner.php:200:        * @todo        Try to make this method more generic so we can move it in BaseFrameworkSystem
-./application/hub/main/nodes/boot/class_HubBootNode.php:110:           // @TODO Add some filters here
+./application/hub/main/nodes/boot/class_HubBootNode.php:116:           // @TODO Add some filters here
 ./application/hub/main/nodes/boot/class_HubBootNode.php:58:     * @todo        add some more special bootstrap things for this boot node
-./application/hub/main/nodes/class_BaseHubNode.php:117:         * @todo        Make this code more generic and move it to CryptoHelper or
-./application/hub/main/nodes/class_BaseHubNode.php:414:         * @todo        Try to make this method more generic so we can move it in BaseFrameworkSystem
-./application/hub/main/nodes/class_BaseHubNode.php:454:         * @todo        Change the first if() block to check for a specific state
-./application/hub/main/nodes/class_BaseHubNode.php:660:         * @todo        Add checking if this node has been announced to the sender node
-./application/hub/main/nodes/class_BaseHubNode.php:680:         * @todo        Add checking if this node has been announced to the sender node
-./application/hub/main/nodes/class_BaseHubNode.php:764:         * @todo        Find more to do here
-./application/hub/main/nodes/class_BaseHubNode.php:777:         * @todo        Handle thrown exception
+./application/hub/main/nodes/class_BaseHubNode.php:131:         * @todo        Make this code more generic and move it to CryptoHelper or
+./application/hub/main/nodes/class_BaseHubNode.php:392:         * @todo        Try to make this method more generic so we can move it in BaseFrameworkSystem
+./application/hub/main/nodes/class_BaseHubNode.php:432:         * @todo        Change the first if() block to check for a specific state
+./application/hub/main/nodes/class_BaseHubNode.php:638:         * @todo        Add checking if this node has been announced to the sender node
+./application/hub/main/nodes/class_BaseHubNode.php:658:         * @todo        Add checking if this node has been announced to the sender node
+./application/hub/main/nodes/class_BaseHubNode.php:761:         * @todo        Find more to do here
+./application/hub/main/nodes/class_BaseHubNode.php:774:         * @todo        Handle thrown exception
 ./application/hub/main/nodes/list/class_HubListNode.php:58:     * @todo        Implement more bootstrap steps
 ./application/hub/main/nodes/list/class_HubListNode.php:79:            // @TODO Add some filters here
 ./application/hub/main/nodes/list/class_HubListNode.php:88:     * @todo        0% done
 ./application/hub/main/nodes/regular/class_HubRegularNode.php:58:       * @todo        Implement this method
 ./application/hub/main/nodes/regular/class_HubRegularNode.php:79:              // @TODO Add some filters here
 ./application/hub/main/nodes/regular/class_HubRegularNode.php:88:       * @todo        0% done
-./application/hub/main/package/class_NetworkPackage.php:1117:   * @todo        This may be enchanced for outgoing packages?
-./application/hub/main/package/class_NetworkPackage.php:1148:           * @todo Unsupported feature of "signed" messages commented out
-./application/hub/main/package/class_NetworkPackage.php:1237:   * @todo        Implement verification of all sent tags here?
+./application/hub/main/package/class_NetworkPackage.php:1150:   * @todo        This may be enchanced for outgoing packages?
+./application/hub/main/package/class_NetworkPackage.php:1181:           * @todo Unsupported feature of "signed" messages commented out
+./application/hub/main/package/class_NetworkPackage.php:1270:   * @todo        Implement verification of all sent tags here?
 ./application/hub/main/package/class_NetworkPackage.php:23: * @todo            Needs to add functionality for handling the object's type
-./application/hub/main/package/class_NetworkPackage.php:339:           // @TODO md5() is very weak, but it needs to be fast
-./application/hub/main/package/class_NetworkPackage.php:413:           // @TODO md5() is very weak, but it needs to be fast
-./application/hub/main/package/class_NetworkPackage.php:576:                   // @TODO We may want to do somthing more here?
-./application/hub/main/package/class_NetworkPackage.php:611:    * @todo        Unfinished area, signatures are currently NOT fully supported
+./application/hub/main/package/class_NetworkPackage.php:338:           // @TODO md5() is very weak, but it needs to be fast
+./application/hub/main/package/class_NetworkPackage.php:412:           // @TODO md5() is very weak, but it needs to be fast
+./application/hub/main/package/class_NetworkPackage.php:578:                   // @TODO We may want to do somthing more here?
+./application/hub/main/package/class_NetworkPackage.php:613:    * @todo        Unfinished area, signatures are currently NOT fully supported
 ./application/hub/main/package/fragmenter/class_PackageFragmenter.php:275:      * @todo        Implement a way to send non-announcement packages with extra-salt
 ./application/hub/main/package/fragmenter/class_PackageFragmenter.php:370:             // @TODO This assert broke packages where the hash chunk was very large: assert(strlen($rawData) <= NetworkPackage::TCP_PACKAGE_SIZE);
 ./application/hub/main/package/fragmenter/class_PackageFragmenter.php:441:      * @todo        $helperInstance is unused
 ./application/hub/main/producer/cruncher/keys/class_CruncherKeyProducer.php:72:         * @todo        ~30% done
 ./application/hub/main/producer/cruncher/work_units/class_CruncherTestUnitProducer.php:79:      * @todo        ~60% done
 ./application/hub/main/producer/cruncher/work_units/class_CruncherTestUnitProducer.php:88:                     // @TODO Unfinished work here
-./application/hub/main/producer/miner/blocks/class_MinerTestGenesisBlockProducer.php:53:        * @todo        0% done
-./application/hub/main/producer/miner/blocks/class_MinerTestGenesisBlockProducer.php:63:        * @todo        0% done
-./application/hub/main/producer/miner/blocks/class_MinerTestGenesisBlockProducer.php:74:        * @todo        0% done
-./application/hub/main/registry/socket/class_SocketRegistry.php:71:            // @TODO Tested again base class, rewrite it to a generic interface!
+./application/hub/main/producer/miner/blocks/class_MinerTestGenesisBlockProducer.php:59:        * @todo        ~10% done
+./application/hub/main/producer/miner/blocks/class_MinerTestGenesisBlockProducer.php:75:        * @todo        0% done
+./application/hub/main/producer/miner/blocks/class_MinerTestGenesisBlockProducer.php:86:        * @todo        ~5% done
+./application/hub/main/recipient/dht/class_DhtRecipient.php:76:                        // @TODO Unfinished
+./application/hub/main/recipient/self/class_SelfRecipient.php:61:              // @TODO Add more checks on data
+./application/hub/main/registry/socket/class_SocketRegistry.php:72:            // @TODO Tested again base class, rewrite it to a generic interface!
+./application/hub/main/resolver/protocol/tcp/class_TcpProtocolResolver.php:57:  * @todo        0% done
 ./application/hub/main/resolver/state/peer/class_PeerStateResolver.php:59:      * @todo        ~30% done
+./application/hub/main/scanner/crawler/uploaded_list/class_CrawlerUploadedListScanner.php:52:   * @todo        0% done
+./application/hub/main/source/urls/class_CrawlerFoundRssUrlSource.php:55:       * @todo        ~10% done
+./application/hub/main/source/urls/class_CrawlerLocalStartUrlSource.php:55:     * @todo        ~10% done
+./application/hub/main/source/urls/class_CrawlerRssStartUrlSource.php:55:       * @todo        ~10% done
+./application/hub/main/source/urls/class_CrawlerUploadedListUrlSource.php:196:  * @todo        ~20% done
+./application/hub/main/states/communicator/init/class_CommunicatorInitState.php:60:     * @todo        0% done?
 ./application/hub/main/states/crawler/active/class_CrawlerActiveState.php:60:   * @todo        0% done
 ./application/hub/main/states/crawler/booting/class_CrawlerBootingState.php:60:         * @todo        0% done
 ./application/hub/main/states/crawler/init/class_CrawlerInitState.php:70:       * @todo        ~30% done
 ./application/hub/main/states/dht/class_BaseDhtState.php:10: * @todo           Create generic DHT interface
+./application/hub/main/states/miner/init/class_MinerInitState.php:60:   * @todo        0% done?
 ./application/hub/main/states/node/active/class_NodeActiveState.php:75:         * @todo        We might want to move some calls to this method to fill it with life
 ./application/hub/main/states/node/init/class_NodeInitState.php:60:     * @todo        We might want to move some calls to this method to fill it with life
 ./application/hub/main/statistics/connection/class_ConnectionStatisticsHelper.php:11: * @todo          Find an interface for hub helper
-./application/hub/main/statistics/connection/class_ConnectionStatisticsHelper.php:98:          // @TODO last_update is not being used at the moment
+./application/hub/main/statistics/connection/class_ConnectionStatisticsHelper.php:29:   * @TODO Add more protocols to use
+./application/hub/main/statistics/connection/class_ConnectionStatisticsHelper.php:99:          // @TODO last_update is not being used at the moment
 ./application/hub/main/streams/raw_data/input/class_RawDataInputStream.php:58:  * @todo        Do we need to do something more here?
 ./application/hub/main/tasks/apt-proxy/class_AptProxyListenerTask.php:63:       * @todo        0%
 ./application/hub/main/tasks/chat/class_ChatTelnetListenerTask.php:63:  * @todo        0%
 ./application/hub/main/tasks/crawler/ping/class_CrawlerPingTask.php:64:         * @todo        0%
 ./application/hub/main/tasks/crawler/publisher/class_CrawlerRemoteJobPublisherTask.php:53:      * @todo        Maybe visit some sub-objects
 ./application/hub/main/tasks/crawler/publisher/class_CrawlerRemoteJobPublisherTask.php:64:      * @todo        0%
+./application/hub/main/tasks/crawler/scanner/class_CrawlerUploadedListScannerTask.php:53:       * @todo        Maybe visit some sub-objects
 ./application/hub/main/tasks/crawler/snippet_extractor/class_CrawlerSnippetExtractorTask.php:53:        * @todo        Maybe visit some sub-objects
 ./application/hub/main/tasks/crawler/snippet_extractor/class_CrawlerSnippetExtractorTask.php:64:        * @todo        0%
 ./application/hub/main/tasks/crawler/structure_analyzer/class_CrawlerStructureAnalyzerTask.php:53:      * @todo        Maybe visit some sub-objects
 ./application/hub/main/tasks/node/update/class_NodeUpdateCheckTask.php:53:      * @todo        0%
 ./application/hub/main/template/announcement/class_XmlAnnouncementTemplateEngine.php:10: * @todo               This template engine does not make use of setTemplateType()
 ./application/hub/main/template/answer/announcement/class_XmlAnnouncementAnswerTemplateEngine.php:10: * @todo          This template engine does not make use of setTemplateType()
-./application/hub/main/template/answer/announcement/class_XmlAnnouncementAnswerTemplateEngine.php:92:   * @todo        Find something useful with this!
+./application/hub/main/template/answer/announcement/class_XmlAnnouncementAnswerTemplateEngine.php:90:   * @todo        Find something useful with this!
 ./application/hub/main/template/answer/class_BaseXmlAnswerTemplateEngine.php:10: * @todo               This template engine does not make use of setTemplateType()
 ./application/hub/main/template/answer/dht/class_XmlDhtBootstrapAnswerTemplateEngine.php:10: * @todo           This template engine does not make use of setTemplateType()
-./application/hub/main/template/answer/dht/class_XmlDhtBootstrapAnswerTemplateEngine.php:95:    * @todo        Find something useful with this!
+./application/hub/main/template/answer/dht/class_XmlDhtBootstrapAnswerTemplateEngine.php:93:    * @todo        Find something useful with this!
 ./application/hub/main/template/answer/requests/class_XmlRequestNodeListAnswerTemplateEngine.php:10: * @todo           This template engine does not make use of setTemplateType()
 ./application/hub/main/template/answer/requests/class_XmlRequestNodeListAnswerTemplateEngine.php:82:    * @todo        Find something useful with this!
 ./application/hub/main/template/class_BaseXmlTemplateEngine.php:10: * @todo            This template engine does not make use of setTemplateType()
 ./application/hub/main/template/publish/class_XmlDhtPublishEntryTemplateEngine.php:10: * @todo         This template engine does not make use of setTemplateType()
 ./application/hub/main/template/requests/class_XmlRequestNodeListTemplateEngine.php:10: * @todo                This template engine does not make use of setTemplateType()
 ./application/hub/main/template/requests/class_XmlRequestNodeListTemplateEngine.php:74:         * @todo        Find something useful with this!
-./application/hub/main/tools/class_HubTools.php:177:                    * @TODO Please try to encapsulate this PHP call into an own class
-./application/hub/main/wrapper/node/class_NodeDistributedHashTableDatabaseWrapper.php:406:             // @TODO Unimplemented part
-./application/hub/main/wrapper/node/class_NodeDistributedHashTableDatabaseWrapper.php:464:      * @todo        Add minimum/maximum age limitations
-./application/hub/main/wrapper/node/class_NodeDistributedHashTableDatabaseWrapper.php:492:      * @todo        Add timestamp to dataset instance
+./application/hub/main/tools/class_HubTools.php:158:                   // @TODO ((25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9])\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[1-9]|0)\.(25[0-5]|2[0-4][0-9]|[0-1]{1}[0-9]{2}|[1-9]{1}[0-9]{1}|[0-9])):([0-9]{3,5})
+./application/hub/main/tools/class_HubTools.php:248:                   // @TODO Find a better validation than empty()
+./application/hub/main/tools/class_HubTools.php:276:                   // @TODO Find a better validation than empty()
+./application/hub/main/wrapper/node/class_NodeDistributedHashTableDatabaseWrapper.php:163:             // @TODO Bad check on UNL, better use a proper validator
+./application/hub/main/wrapper/node/class_NodeDistributedHashTableDatabaseWrapper.php:209:             // @TODO Bad check on UNL, better use a proper validator
+./application/hub/main/wrapper/node/class_NodeDistributedHashTableDatabaseWrapper.php:442:             // @TODO Unimplemented part
+./application/hub/main/wrapper/node/class_NodeDistributedHashTableDatabaseWrapper.php:509:      * @todo        Add minimum/maximum age limitations
+./application/hub/main/wrapper/node/class_NodeDistributedHashTableDatabaseWrapper.php:540:      * @todo        Add timestamp to dataset instance
 ./application/hub/main/wrapper/states/class_PeerStateLookupDatabaseWrapper.php:174:     * @todo        Unfinished area
 ./application/hub/main/wrapper/states/class_PeerStateLookupDatabaseWrapper.php:216:     * @todo        Unfinished area
 ./core/inc/classes/exceptions/main/class_MissingMethodException.php:13: * @todo                Try to rewrite user/guest login classes and mark this exception as deprecated
 ./core/inc/classes/interfaces/class_FrameworkInterface.php:11: * @todo         Find a better name for this interface
 ./core/inc/classes/interfaces/criteria/extended/class_LocalSearchCriteria.php:30:       * @todo        Find a nice casting here. (int) allows until and including 32766.
 ./core/inc/classes/interfaces/criteria/extended/class_LocalSearchCriteria.php:54:       * @todo        Find a nice casting here. (int) allows until and including 32766.
-./core/inc/classes/main/class_BaseFrameworkSystem.php:1778:     * @todo        Write a logging mechanism for productive mode
-./core/inc/classes/main/class_BaseFrameworkSystem.php:1793:                    // @TODO Finish this part!
-./core/inc/classes/main/class_BaseFrameworkSystem.php:205:     // @todo Try to clean these constants up
-./core/inc/classes/main/class_BaseFrameworkSystem.php:430:             // @TODO __CLASS__ does always return BaseFrameworkSystem but not the extending (=child) class
-./core/inc/classes/main/class_BaseFrameworkSystem.php:504:      * @todo        SearchableResult and UpdateableResult shall have a super interface to use here
+./core/inc/classes/main/class_BaseFrameworkSystem.php:1927:     * @todo        Write a logging mechanism for productive mode
+./core/inc/classes/main/class_BaseFrameworkSystem.php:1942:                    // @TODO Finish this part!
+./core/inc/classes/main/class_BaseFrameworkSystem.php:240:     // @todo Try to clean these constants up
+./core/inc/classes/main/class_BaseFrameworkSystem.php:465:             // @TODO __CLASS__ does always return BaseFrameworkSystem but not the extending (=child) class
+./core/inc/classes/main/class_BaseFrameworkSystem.php:539:      * @todo        SearchableResult and UpdateableResult shall have a super interface to use here
 ./core/inc/classes/main/commands/web/class_WebLoginAreaCommand.php:64:  * @todo        Add some stuff here: Some personal data, app/game related data
 ./core/inc/classes/main/commands/web/class_WebProblemCommand.php:58:    * @todo        0% done
 ./core/inc/classes/main/commands/web/class_WebStatusCommand.php:58:     * @todo        0% done
 ./core/inc/classes/main/criteria/search/class_SearchCriteria.php:102:   * @todo        Find a nice casting here. (int) allows until and including 32766.
 ./core/inc/classes/main/criteria/search/class_SearchCriteria.php:70:    * @todo        Find a nice casting here. (int) allows until and including 32766.
 ./core/inc/classes/main/database/databases/class_LocalFileDatabase.php:327:     * @todo        Do some checks on the database directory and files here
-./core/inc/classes/main/database/databases/class_LocalFileDatabase.php:605:     * @todo        Add more generic non-public data for removal
+./core/inc/classes/main/database/databases/class_LocalFileDatabase.php:616:     * @todo        Add more generic non-public data for removal
 ./core/inc/classes/main/decorator/template/class_XmlRewriterTemplateDecorator.php:427:  * @todo        Find something useful with this!
 ./core/inc/classes/main/discovery/payment/class_LocalPaymentDiscovery.php:85:   * @todo        0% done
+./core/inc/classes/main/file_directories/class_BaseFileIo.php:162:      * @todo        Handle seekStatus
+./core/inc/classes/main/file_directories/class_BaseFile.php:135:        * @todo        ~10% done?
+./core/inc/classes/main/file_directories/class_BaseFile.php:148:        * @todo        Handle seekStatus
+./core/inc/classes/main/file_directories/directory/class_FrameworkDirectoryPointer.php:68:      * @todo        Get rid of inConstructor, could be old-lost code.
+./core/inc/classes/main/file_directories/io_stream/class_FileIoStream.php:270:  * @todo        0% done
+./core/inc/classes/main/file_directories/io_stream/class_FileIoStream.php:74:   * @todo        This method needs heavy rewrite
 ./core/inc/classes/main/filter/change/class_EmailChangeFilter.php:55:   * @todo        Implement email change of the user here. HINT: Use the User class!
 ./core/inc/classes/main/filter/change/class_PasswordChangeFilter.php:55:        * @todo        Finished updating user password hash here. HINT: Use the User class again.
 ./core/inc/classes/main/filter/news/class_NewsProcessFilter.php:55:     * @todo        Unfinished stub, add functionality here
 ./core/inc/classes/main/images/class_BaseImage.php:234:         * @todo        Find something usefull for this method.
 ./core/inc/classes/main/images/class_BaseImage.php:245:         * @todo        Find something usefull for this method.
 ./core/inc/classes/main/images/class_BaseImage.php:255:         * @todo        Find something usefull for this method.
-./core/inc/classes/main/io/class_FileIoStream.php:74:   * @todo        This method needs heavy rewrite
+./core/inc/classes/main/index/class_BaseIndex.php:135:  * @todo        Currently the index file is not cached, please implement a memory-handling class and if enough RAM is found, cache the whole index file.
 ./core/inc/classes/main/mailer/class_BaseMailer.php:55:                // @TODO This needs testing/fixes because the deprecated method
 ./core/inc/classes/main/mailer/debug/class_DebugMailer.php:124:         * @todo        0% done
 ./core/inc/classes/main/menu/class_BaseMenu.php:59:                    // @TODO Should we log it here? We should, because it will be silently ignored.
 ./core/inc/classes/main/response/image/class_ImageResponse.php:89:      * @todo        Why are these parameters conflicting?
 ./core/inc/classes/main/response/image/class_ImageResponse.php:90:      * @todo        If the return statement is removed and setcookie() commented out,
 ./core/inc/classes/main/response/image/class_ImageResponse.php:91:      * @todo        this will send only one cookie out, the first one.
-./core/inc/classes/main/result/class_DatabaseResult.php:239:    * @todo        0% done
-./core/inc/classes/main/result/class_DatabaseResult.php:393:    * @todo        Find a caching way without modifying the result array
+./core/inc/classes/main/result/class_DatabaseResult.php:244:    * @todo        0% done
+./core/inc/classes/main/result/class_DatabaseResult.php:398:    * @todo        Find a caching way without modifying the result array
 ./core/inc/classes/main/rng/class_RandomNumberGenerator.php:175:        * @todo        I had a better random number generator here but now it is somewhere lost :(
 ./core/inc/classes/main/rng/class_RandomNumberGenerator.php:97:         * @todo        Add site key for stronger salt!
+./core/inc/classes/main/stacker/file/class_BaseFileStack.php:147:       * @todo        Currently the stack file is not cached, please implement a memory-handling class and if enough RAM is found, cache the whole stack file.
+./core/inc/classes/main/stacker/file/class_BaseFileStack.php:309:              // @TODO Please implement this, returning FALSE
+./core/inc/classes/main/stacker/file/class_BaseFileStack.php:45:        * @todo        To hard assertions here, better rewrite them to exceptions
 ./core/inc/classes/main/template/class_BaseTemplateEngine.php:1070:                    // @TODO This silent abort should be logged, maybe.
 ./core/inc/classes/main/template/class_BaseTemplateEngine.php:1078:                    // @TODO Old behaviour, will become obsolete!
 ./core/inc/classes/main/template/class_BaseTemplateEngine.php:1081:                    // @TODO Yet another old way
 ./core/inc/classes/main/user/class_BaseUser.php:308:    * @todo        Try to make this method more generic so we can move it in BaseFrameworkSystem
 ./core/inc/classes/main/user/class_BaseUser.php:80:     * @todo        Find a way of casting here. "(int)" might destroy the user id > 32766
 ./core/inc/classes/main/user/member/class_Member.php:84:        * @todo        Add more ways over creating user classes
-./core/inc/classes/middleware/compressor/class_CompressorChannel.php:100:                      // @TODO Is there a configurable fall-back compressor needed, or is NullCompressor okay?
+./core/inc/classes/middleware/compressor/class_CompressorChannel.php:103:                      // @TODO Is there a configurable fall-back compressor needed, or is NullCompressor okay?
 ./core/inc/classes/middleware/debug/class_DebugMiddleware.php:113:                     // @TODO Initialization phase
+./core/inc/classes/middleware/io/class_FileIoHandler.php:174:   * @todo        0% done
 ./core/inc/classes.php:10: * @todo             Minimize these includes
 ./core/inc/classes/third_party/api/wernisportal/class_WernisApi.php:10: * @todo                Out-dated since 0.6-BETA
 ./core/inc/config/class_FrameworkConfiguration.php:115:         * @todo        This method encapsulates a deprecated PHP function and should be deprecated, too.
 ./core/inc/includes.php:11: * @todo            Minimize these includes
 ./core/inc/includes.php:37:// @TODO This makes the core depending on the SPL. But it should be installed anyway.
 ./core/inc/includes.php:41:// @TODO Find a nicer OOP-ed way for this
-./core/inc/loader/class_ClassLoader.php:273:                   /* @todo: Do not die here. */
+./core/inc/loader/class_ClassLoader.php:319:                   /* @TODO: Do not exit here. */
 ./core/inc/output.php:11: * @todo              Minimize these includes
 ./core/inc/selector.php:11: * @todo            Minimize these includes
 ./index.php:43:         * @todo        This method is old code and needs heavy rewrite and should be moved to ApplicationHelper
 ### ### DEPRECATION FOLLOWS: ### ###
-./application/hub/main/nodes/class_BaseHubNode.php:56:  * @deprecated
+./application/hub/main/nodes/class_BaseHubNode.php:46:  * @deprecated
 ./core/inc/classes/exceptions/main/class_MissingMethodException.php:14: * @deprecated  Please do no longer use this exception
 ./core/inc/classes/interfaces/database/backend/class_DatabaseFrontendInterface.php:2:// @DEPRECATED
 ./core/inc/classes/interfaces/database/frontend/class_DatabaseFrontendInterface.php:2:// @DEPRECATED