]> git.mxchange.org Git - hub.git/commitdiff
Continued with crawler:
authorRoland Haeder <roland@mxchange.org>
Sat, 7 Mar 2015 18:18:44 +0000 (19:18 +0100)
committerRoland Haeder <roland@mxchange.org>
Sat, 7 Mar 2015 18:27:10 +0000 (19:27 +0100)
- initUrlSourceTask() cannot be called in constructor as this would lead to a
  missing entry in seachTask() method
- Renamed crawler classes from *UrlGetterTask to *UrlCrawlerTask
- Added new field urlSourceInstance which requires an interface UrlSource
- TODOs.txt updated

Signed-off-by: Roland Haeder <roland@mxchange.org>
18 files changed:
application/hub/config.php
application/hub/main/tasks/crawler/class_BaseUrlSourceTask.php
application/hub/main/tasks/crawler/url_crawler/.htaccess [new file with mode: 0644]
application/hub/main/tasks/crawler/url_crawler/local/.htaccess [new file with mode: 0644]
application/hub/main/tasks/crawler/url_crawler/local/class_CrawlerLocalUrlCrawlerTask.php [new file with mode: 0644]
application/hub/main/tasks/crawler/url_crawler/remote/.htaccess [new file with mode: 0644]
application/hub/main/tasks/crawler/url_crawler/remote/class_CrawlerRemoteUrlCrawlerTask.php [new file with mode: 0644]
application/hub/main/tasks/crawler/url_getter/.htaccess [deleted file]
application/hub/main/tasks/crawler/url_getter/local/.htaccess [deleted file]
application/hub/main/tasks/crawler/url_getter/local/class_CrawlerLocalUrlGetterTask.php [deleted file]
application/hub/main/tasks/crawler/url_getter/remote/.htaccess [deleted file]
application/hub/main/tasks/crawler/url_getter/remote/class_CrawlerRemoteUrlGetterTask.php [deleted file]
application/hub/main/tasks/crawler/url_source/class_CrawlerUrlSource
application/hub/main/tasks/crawler/url_source/class_CrawlerUrlSourceFoundRssTask.php
application/hub/main/tasks/crawler/url_source/class_CrawlerUrlSourceLocalStartTask.php
application/hub/main/tasks/crawler/url_source/class_CrawlerUrlSourceRssStartTask.php
application/hub/main/tasks/crawler/url_source/class_CrawlerUrlSourceUploadedListTask.php
docs/TODOs.txt

index e7d1dafacb4b3d0355e7dad494f01a9bc7d78b4c..339cf6534f840d91dc7a9a075a1f0592af58dfea 100644 (file)
@@ -1329,7 +1329,7 @@ $cfg->setConfigEntry('task_crawler_node_communicator_interval_delay', 250);
 $cfg->setConfigEntry('task_crawler_node_communicator_max_runs', 0);
 
 // CFG: CRAWLER-LOCAL-URL-CRAWLER-TASK-CLASS
-$cfg->setConfigEntry('crawler_local_url_crawler_task_class', 'CrawlerLocalUrlGetterTask');
+$cfg->setConfigEntry('crawler_local_url_crawler_task_class', 'CrawlerLocalUrlCrawlerTask');
 
 // CFG: TASK-CRAWLER-LOCAL-URL-CRAWLER-STARTUP-DELAY
 $cfg->setConfigEntry('task_crawler_local_url_crawler_startup_delay', 1500);
@@ -1341,7 +1341,7 @@ $cfg->setConfigEntry('task_crawler_local_url_crawler_interval_delay', 200);
 $cfg->setConfigEntry('task_crawler_local_url_crawler_max_runs', 0);
 
 // CFG: CRAWLER-REMOTE-URL-CRAWLER-TASK-CLASS
-$cfg->setConfigEntry('crawler_remote_url_crawler_task_class', 'CrawlerRemoteUrlGetterTask');
+$cfg->setConfigEntry('crawler_remote_url_crawler_task_class', 'CrawlerRemoteUrlCrawlerTask');
 
 // CFG: TASK-CRAWLER-REMOTE-URL-CRAWLER-STARTUP-DELAY
 $cfg->setConfigEntry('task_crawler_remote_url_crawler_startup_delay', 1500);
index 998980272080ab3063fd1f864175560c0b935b18..9399ae89c225bdc2279b1ca15d06b475fa877aa0 100644 (file)
@@ -31,9 +31,6 @@ class BaseUrlSourceTask extends BaseTask {
        protected function __construct ($className) {
                // Call parent constructor
                parent::__construct($className);
-
-               // Init this URL source task
-               $this->initUrlSourceTask();
        }
 
        /**
@@ -41,12 +38,12 @@ class BaseUrlSourceTask extends BaseTask {
         *
         * @return      void
         */
-       private function initUrlSourceTask () {
+       protected function initUrlSourceTask () {
                // Get source instance
                $sourceInstance = UrlSourceObjectFactory::createUrlSourceInstance($this);
 
                // And set it here
-               $this->setSourceInstance($sourceInstance);
+               $this->setUrlSourceInstance($sourceInstance);
        }
 }
 
diff --git a/application/hub/main/tasks/crawler/url_crawler/.htaccess b/application/hub/main/tasks/crawler/url_crawler/.htaccess
new file mode 100644 (file)
index 0000000..3a42882
--- /dev/null
@@ -0,0 +1 @@
+Deny from all
diff --git a/application/hub/main/tasks/crawler/url_crawler/local/.htaccess b/application/hub/main/tasks/crawler/url_crawler/local/.htaccess
new file mode 100644 (file)
index 0000000..3a42882
--- /dev/null
@@ -0,0 +1 @@
+Deny from all
diff --git a/application/hub/main/tasks/crawler/url_crawler/local/class_CrawlerLocalUrlCrawlerTask.php b/application/hub/main/tasks/crawler/url_crawler/local/class_CrawlerLocalUrlCrawlerTask.php
new file mode 100644 (file)
index 0000000..3b7e3c1
--- /dev/null
@@ -0,0 +1,72 @@
+<?php
+/**
+ * A LocalUrlCrawler task for crawlers
+ *
+ * @author             Roland Haeder <webmaster@ship-simu.org>
+ * @version            0.0.0
+ * @copyright  Copyright (c) 2014 Crawler 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 CrawlerLocalUrlCrawlerTask extends BaseTask implements Taskable, Visitable {
+       /**
+        * Protected constructor
+        *
+        * @return      void
+        */
+       protected function __construct () {
+               // Call parent constructor
+               parent::__construct(__CLASS__);
+       }
+
+       /**
+        * Creates an instance of this class
+        *
+        * @return      $taskInstance   An instance of a Visitable class
+        */
+       public final static function createCrawlerLocalUrlCrawlerTask () {
+               // Get new instance
+               $taskInstance = new CrawlerLocalUrlCrawlerTask();
+
+               // Return the prepared instance
+               return $taskInstance;
+       }
+
+       /**
+        * Accepts the visitor to process the visitor
+        *
+        * @param       $visitorInstance        An instance of a Visitor class
+        * @return      void
+        * @todo        Maybe visit some sub-objects
+        */
+       public function accept (Visitor $visitorInstance) {
+               // Visit this task
+               $visitorInstance->visitTask($this);
+       }
+
+       /**
+        * Executes the task
+        *
+        * @return      void
+        * @todo        0%
+        */
+       public function executeTask () {
+               $this->partialStub('Unimplemented task.');
+       }
+}
+
+// [EOF]
+?>
diff --git a/application/hub/main/tasks/crawler/url_crawler/remote/.htaccess b/application/hub/main/tasks/crawler/url_crawler/remote/.htaccess
new file mode 100644 (file)
index 0000000..3a42882
--- /dev/null
@@ -0,0 +1 @@
+Deny from all
diff --git a/application/hub/main/tasks/crawler/url_crawler/remote/class_CrawlerRemoteUrlCrawlerTask.php b/application/hub/main/tasks/crawler/url_crawler/remote/class_CrawlerRemoteUrlCrawlerTask.php
new file mode 100644 (file)
index 0000000..465f1a3
--- /dev/null
@@ -0,0 +1,72 @@
+<?php
+/**
+ * A RemoteUrlCrawler task for crawlers
+ *
+ * @author             Roland Haeder <webmaster@ship-simu.org>
+ * @version            0.0.0
+ * @copyright  Copyright (c) 2014 Crawler 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 CrawlerRemoteUrlCrawlerTask extends BaseTask implements Taskable, Visitable {
+       /**
+        * Protected constructor
+        *
+        * @return      void
+        */
+       protected function __construct () {
+               // Call parent constructor
+               parent::__construct(__CLASS__);
+       }
+
+       /**
+        * Creates an instance of this class
+        *
+        * @return      $taskInstance   An instance of a Visitable class
+        */
+       public final static function createCrawlerRemoteUrlCrawlerTask () {
+               // Get new instance
+               $taskInstance = new CrawlerRemoteUrlCrawlerTask();
+
+               // Return the prepared instance
+               return $taskInstance;
+       }
+
+       /**
+        * Accepts the visitor to process the visitor
+        *
+        * @param       $visitorInstance        An instance of a Visitor class
+        * @return      void
+        * @todo        Maybe visit some sub-objects
+        */
+       public function accept (Visitor $visitorInstance) {
+               // Visit this task
+               $visitorInstance->visitTask($this);
+       }
+
+       /**
+        * Executes the task
+        *
+        * @return      void
+        * @todo        0%
+        */
+       public function executeTask () {
+               $this->partialStub('Unimplemented task.');
+       }
+}
+
+// [EOF]
+?>
diff --git a/application/hub/main/tasks/crawler/url_getter/.htaccess b/application/hub/main/tasks/crawler/url_getter/.htaccess
deleted file mode 100644 (file)
index 3a42882..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Deny from all
diff --git a/application/hub/main/tasks/crawler/url_getter/local/.htaccess b/application/hub/main/tasks/crawler/url_getter/local/.htaccess
deleted file mode 100644 (file)
index 3a42882..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Deny from all
diff --git a/application/hub/main/tasks/crawler/url_getter/local/class_CrawlerLocalUrlGetterTask.php b/application/hub/main/tasks/crawler/url_getter/local/class_CrawlerLocalUrlGetterTask.php
deleted file mode 100644 (file)
index e3ecc6c..0000000
+++ /dev/null
@@ -1,72 +0,0 @@
-<?php
-/**
- * A LocalUrlGetter task for crawlers
- *
- * @author             Roland Haeder <webmaster@ship-simu.org>
- * @version            0.0.0
- * @copyright  Copyright (c) 2014 Crawler 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 CrawlerLocalUrlGetterTask extends BaseTask implements Taskable, Visitable {
-       /**
-        * Protected constructor
-        *
-        * @return      void
-        */
-       protected function __construct () {
-               // Call parent constructor
-               parent::__construct(__CLASS__);
-       }
-
-       /**
-        * Creates an instance of this class
-        *
-        * @return      $taskInstance   An instance of a Visitable class
-        */
-       public final static function createCrawlerLocalUrlGetterTask () {
-               // Get new instance
-               $taskInstance = new CrawlerLocalUrlGetterTask();
-
-               // Return the prepared instance
-               return $taskInstance;
-       }
-
-       /**
-        * Accepts the visitor to process the visitor
-        *
-        * @param       $visitorInstance        An instance of a Visitor class
-        * @return      void
-        * @todo        Maybe visit some sub-objects
-        */
-       public function accept (Visitor $visitorInstance) {
-               // Visit this task
-               $visitorInstance->visitTask($this);
-       }
-
-       /**
-        * Executes the task
-        *
-        * @return      void
-        * @todo        0%
-        */
-       public function executeTask () {
-               $this->partialStub('Unimplemented task.');
-       }
-}
-
-// [EOF]
-?>
diff --git a/application/hub/main/tasks/crawler/url_getter/remote/.htaccess b/application/hub/main/tasks/crawler/url_getter/remote/.htaccess
deleted file mode 100644 (file)
index 3a42882..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Deny from all
diff --git a/application/hub/main/tasks/crawler/url_getter/remote/class_CrawlerRemoteUrlGetterTask.php b/application/hub/main/tasks/crawler/url_getter/remote/class_CrawlerRemoteUrlGetterTask.php
deleted file mode 100644 (file)
index 9dc5b9d..0000000
+++ /dev/null
@@ -1,72 +0,0 @@
-<?php
-/**
- * A RemoteUrlGetter task for crawlers
- *
- * @author             Roland Haeder <webmaster@ship-simu.org>
- * @version            0.0.0
- * @copyright  Copyright (c) 2014 Crawler 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 CrawlerRemoteUrlGetterTask extends BaseTask implements Taskable, Visitable {
-       /**
-        * Protected constructor
-        *
-        * @return      void
-        */
-       protected function __construct () {
-               // Call parent constructor
-               parent::__construct(__CLASS__);
-       }
-
-       /**
-        * Creates an instance of this class
-        *
-        * @return      $taskInstance   An instance of a Visitable class
-        */
-       public final static function createCrawlerRemoteUrlGetterTask () {
-               // Get new instance
-               $taskInstance = new CrawlerRemoteUrlGetterTask();
-
-               // Return the prepared instance
-               return $taskInstance;
-       }
-
-       /**
-        * Accepts the visitor to process the visitor
-        *
-        * @param       $visitorInstance        An instance of a Visitor class
-        * @return      void
-        * @todo        Maybe visit some sub-objects
-        */
-       public function accept (Visitor $visitorInstance) {
-               // Visit this task
-               $visitorInstance->visitTask($this);
-       }
-
-       /**
-        * Executes the task
-        *
-        * @return      void
-        * @todo        0%
-        */
-       public function executeTask () {
-               $this->partialStub('Unimplemented task.');
-       }
-}
-
-// [EOF]
-?>
index 48a6a42c89dbc5e29a5f284eca860135f9ce99e5..284cf5d322486dfdeaa42b1c13e143f0e23d7051 100644 (file)
@@ -63,8 +63,20 @@ class CrawlerUrlSource???Task extends BaseUrlSourceTask implements Taskable, Vis
         * @return      void
         */
        public function executeTask () {
-               // Get the URL source instance and announce us
-               UrlSourceObjectFactory::createUrlSourceInstance($this)->processStack();
+               // Get source instance
+               $sourceInstance = $this->getUrlSourceInstance();
+
+               // Is it not set?
+               if (is_null($sourceInstance)) {
+                       // Initialize it
+                       $this->initUrlSourceTask();
+
+                       // And re-get it
+                       $sourceInstance = $this->getUrlSourceInstance();
+               } // END - if
+
+               // Get the URL source instance and fill the stack with crawl entries
+               $sourceInstance->fillUrlStack();
        }
 }
 
index dd912b465b77afa13f80a022ac040fc734ef765d..823ba33366cb5b217c842896aee0f33b87cc9cc4 100644 (file)
@@ -63,8 +63,20 @@ class CrawlerUrlSourceFoundRssTask extends BaseUrlSourceTask implements Taskable
         * @return      void
         */
        public function executeTask () {
-               // Get the URL source instance and announce us
-               $this->getSourceInstance()->fillUrlStack();
+               // Get source instance
+               $sourceInstance = $this->getUrlSourceInstance();
+
+               // Is it not set?
+               if (is_null($sourceInstance)) {
+                       // Initialize it
+                       $this->initUrlSourceTask();
+
+                       // And re-get it
+                       $sourceInstance = $this->getUrlSourceInstance();
+               } // END - if
+
+               // Get the URL source instance and fill the stack with crawl entries
+               $sourceInstance->fillUrlStack();
        }
 }
 
index 5938d2cb75647e4a6cb5056f2760bec8adec65dc..eb2839eb93f99c1bfde221e10bd393286c66462b 100644 (file)
@@ -63,8 +63,20 @@ class CrawlerUrlSourceLocalStartTask extends BaseUrlSourceTask implements Taskab
         * @return      void
         */
        public function executeTask () {
-               // Get the URL source instance and announce us
-               $this->getSourceInstance()->fillUrlStack();
+               // Get source instance
+               $sourceInstance = $this->getUrlSourceInstance();
+
+               // Is it not set?
+               if (is_null($sourceInstance)) {
+                       // Initialize it
+                       $this->initUrlSourceTask();
+
+                       // And re-get it
+                       $sourceInstance = $this->getUrlSourceInstance();
+               } // END - if
+
+               // Get the URL source instance and fill the stack with crawl entries
+               $sourceInstance->fillUrlStack();
        }
 }
 
index e8c317541b50e73b94eee73fd5440228450b9c12..c414ce2bcede3ee372bf0343195dbaf9e619489a 100644 (file)
@@ -63,8 +63,20 @@ class CrawlerUrlSourceRssStartTask extends BaseUrlSourceTask implements Taskable
         * @return      void
         */
        public function executeTask () {
-               // Get the URL source instance and announce us
-               $this->getSourceInstance()->fillUrlStack();
+               // Get source instance
+               $sourceInstance = $this->getUrlSourceInstance();
+
+               // Is it not set?
+               if (is_null($sourceInstance)) {
+                       // Initialize it
+                       $this->initUrlSourceTask();
+
+                       // And re-get it
+                       $sourceInstance = $this->getUrlSourceInstance();
+               } // END - if
+
+               // Get the URL source instance and fill the stack with crawl entries
+               $sourceInstance->fillUrlStack();
        }
 }
 
index d8092485866c1219898e8448d4bcc373a36833f1..50875ab1e5890dde5a01454e528c5a4309484742 100644 (file)
@@ -63,8 +63,20 @@ class CrawlerUrlSourceUploadedListTask extends BaseUrlSourceTask implements Task
         * @return      void
         */
        public function executeTask () {
-               // Get the URL source instance and announce us
-               $this->getSourceInstance()->fillUrlStack();
+               // Get source instance
+               $sourceInstance = $this->getUrlSourceInstance();
+
+               // Is it not set?
+               if (is_null($sourceInstance)) {
+                       // Initialize it
+                       $this->initUrlSourceTask();
+
+                       // And re-get it
+                       $sourceInstance = $this->getUrlSourceInstance();
+               } // END - if
+
+               // Get the URL source instance and fill the stack with crawl entries
+               $sourceInstance->fillUrlStack();
        }
 }
 
index 746e1f2b9289038e3e45ac4d00f61f5f4c0a905f..9f17dbc700c4ae6f6d4f7c8c8a1e3421a40daaf2 100644 (file)
@@ -1,7 +1,7 @@
 ### WARNING: THIS FILE IS AUTO-GENERATED BY ./todo-builder.sh ###
 ### DO NOT EDIT THIS FILE. ###
-./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/config.php:772:// @TODO This and the next value is very static again
+./application/hub/config.php:836:// @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
@@ -15,7 +15,7 @@
 ./application/hub/interfaces/wrapper/class_NodeDhtWrapper.php:122:      * @todo        Add minimum/maximum age limitations
 ./application/hub/interfaces/wrapper/class_NodeDhtWrapper.php:132:      * @todo        Add timestamp to dataset instance
 ./application/hub/main/chains/class_PackageFilterChain.php:54:  * @todo        This may be slow if a message with a lot tags arrived
-./application/hub/main/class_BaseHubSystem.php:577:                            // @TODO On some systems it is 134, on some 107?
+./application/hub/main/class_BaseHubSystem.php:604:                            // @TODO On some systems it is 134, on some 107?
 ./application/hub/main/commands/console/class_HubConsoleAptProxyCommand.php:107:        * @todo        Should we add some more filters?
 ./application/hub/main/commands/console/class_HubConsoleAptProxyCommand.php:58:         * @todo        Try to create a AptProxyActivationTask or so
 ./application/hub/main/commands/console/class_HubConsoleChatCommand.php:107:    * @todo        Should we add some more filters?
 ./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/protocol/class_ProtocolDiscovery.php:71:              // @TODO Add some validation here???
+./application/hub/main/discovery/protocol/class_ProtocolDiscovery.php:94:              // @TODO Add some validation here???
+./application/hub/main/discovery/recipient/package/class_PackageRecipientDiscovery.php:115:                    // @TODO Unfinished: $this->getListInstance()->addEntry('unl', $decodedData[NetworkPackage::PACKAGE_DATA_RECIPIENT]);
 ./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/discovery/recipient/package/class_PackageRecipientDiscovery.php:87:      * @todo        Enrich both messages with recipient data
+./application/hub/main/discovery/recipient/socket/class_PackageSocketDiscovery.php:159:                // @TODO FIXME: I don't like these abuse of variables, better strict types
 ./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/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/protocol/class_BaseProtocolHandler.php:110:              * @TODO If you know why, please fix and explain it to me.
 ./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: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/helper/connection/udp/class_UdpConnectionHelper.php:56:  * @todo        Implement a filter for ease notification of other objects like the pool
+./application/hub/main/helper/connection/ipv4/class_BaseIpV4ConnectionHelper.php:105:   * @todo        Rewrite the while() loop to a iterator to not let the software stay very long here
+./application/hub/main/helper/connection/ipv4/class_BaseIpV4ConnectionHelper.php:10: * @todo           Find an interface for hub helper
+./application/hub/main/helper/connection/ipv4/class_BaseIpV4ConnectionHelper.php:77:                   // @TODO Move this to the socket error handler
+./application/hub/main/helper/connection/ipv4/tcp/class_TcpConnectionHelper.php:10: * @todo            Find an interface for hub helper
+./application/hub/main/helper/connection/ipv4/tcp/class_TcpConnectionHelper.php:118:                           // @TODO Rewrite this test for UNLs
+./application/hub/main/helper/connection/ipv4/tcp/class_TcpConnectionHelper.php:125:                           // @TODO Rewrite this test for UNLs
+./application/hub/main/helper/connection/ipv4/tcp/class_TcpConnectionHelper.php:155:    * @todo        We may want to implement a filter for ease notification of other objects like our pool
+./application/hub/main/helper/connection/ipv4/tcp/class_TcpConnectionHelper.php:49:     * @todo        $errorCode/-Message are now in handleSocketError()'s call-back methods
+./application/hub/main/helper/connection/ipv4/tcp/class_TcpConnectionHelper.php:89:            // @TODO The whole resolving part should be moved out and made more configurable
+./application/hub/main/helper/connection/ipv4/udp/class_UdpConnectionHelper.php:10: * @todo            Find an interface for hub helper
+./application/hub/main/helper/connection/ipv4/udp/class_UdpConnectionHelper.php:56:     * @todo        Implement a filter for ease notification of other objects like the pool
 ./application/hub/main/helper/dht/class_DhtBootstrapHelper.php:10: * @todo             Find an interface for hub helper
 ./application/hub/main/helper/dht/class_DhtPublishEntryHelper.php:10: * @todo          Find an interface for hub helper
 ./application/hub/main/helper/node/announcement/class_NodeAnnouncementHelper.php:10: * @todo           Find an interface for hub helper
 ./application/hub/main/iterator/pool/tasks/class_TaskPoolIterator.php:11: * @todo              latency-based iteration or similar approaches
 ./application/hub/main/listener/tcp/class_TcpListener.php:252:                 // @TODO Does this work on Windozer boxes???
 ./application/hub/main/listener/udp/class_UdpListener.php:153:  * @todo        ~50% done
-./application/hub/main/lists/class_BaseList.php:276:                   // @TODO Extend this somehow?
+./application/hub/main/lists/class_BaseList.php:305:                   // @TODO Extend this somehow?
 ./application/hub/main/lists/groups/class_ListGroupList.php:61:         * @todo        0% done
 ./application/hub/main/miner/chash/class_HubChashMiner.php:108:         * @todo        Implement this method
 ./application/hub/main/miner/chash/class_HubChashMiner.php:138:         * @todo        0% done
 ./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/class_BaseHubNode.php:763:         * @todo        Find more to do here
+./application/hub/main/nodes/class_BaseHubNode.php:776:         * @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: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:1167:   * @todo        This may be enchanced for outgoing packages?
+./application/hub/main/package/class_NetworkPackage.php:1198:           * @todo Unsupported feature of "signed" messages commented out
+./application/hub/main/package/class_NetworkPackage.php:1287:   * @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: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/class_NetworkPackage.php:595:                   // @TODO We may want to do somthing more here?
+./application/hub/main/package/class_NetworkPackage.php:630:    * @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/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:75:            // @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/source/urls/class_CrawlerFoundRssUrlSource.php:55:       * @todo        0% done
+./application/hub/main/source/urls/class_CrawlerLocalStartUrlSource.php:55:     * @todo        0% done
+./application/hub/main/source/urls/class_CrawlerRssStartUrlSource.php:55:       * @todo        0% done
+./application/hub/main/source/urls/class_CrawlerUploadedListUrlSource.php:327:  * @todo        ~40% 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/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/crawler/structure_analyzer/class_CrawlerStructureAnalyzerTask.php:64:      * @todo        0%
-./application/hub/main/tasks/crawler/url_getter/local/class_CrawlerLocalUrlGetterTask.php:53:   * @todo        Maybe visit some sub-objects
-./application/hub/main/tasks/crawler/url_getter/local/class_CrawlerLocalUrlGetterTask.php:64:   * @todo        0%
-./application/hub/main/tasks/crawler/url_getter/remote/class_CrawlerRemoteUrlGetterTask.php:53:         * @todo        Maybe visit some sub-objects
-./application/hub/main/tasks/crawler/url_getter/remote/class_CrawlerRemoteUrlGetterTask.php:64:         * @todo        0%
+./application/hub/main/tasks/crawler/url_crawler/local/class_CrawlerLocalUrlCrawlerTask.php:53:         * @todo        Maybe visit some sub-objects
+./application/hub/main/tasks/crawler/url_crawler/local/class_CrawlerLocalUrlCrawlerTask.php:64:         * @todo        0%
+./application/hub/main/tasks/crawler/url_crawler/remote/class_CrawlerRemoteUrlCrawlerTask.php:53:       * @todo        Maybe visit some sub-objects
+./application/hub/main/tasks/crawler/url_crawler/remote/class_CrawlerRemoteUrlCrawlerTask.php:64:       * @todo        0%
 ./application/hub/main/tasks/crawler/url_source/class_CrawlerUrlSourceFoundRssTask.php:53:      * @todo        Maybe visit some sub-objects
 ./application/hub/main/tasks/crawler/url_source/class_CrawlerUrlSourceLocalStartTask.php:53:    * @todo        Maybe visit some sub-objects
 ./application/hub/main/tasks/crawler/url_source/class_CrawlerUrlSourceRssStartTask.php:53:      * @todo        Maybe visit some sub-objects
 ./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: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/tools/class_HubTools.php:263:                   // @TODO Find a better validation than empty()
+./application/hub/main/tools/class_HubTools.php:291:                   // @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: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.php:10: * @todo             Minimize these includes
 ./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/exceptions/main/class_NoConfigEntryException.php:10: * @todo                Rename this class to NoFoundEntryException
 ./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: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/class_BaseFrameworkSystem.php:1977:     * @todo        Write a logging mechanism for productive mode
+./core/inc/classes/main/class_BaseFrameworkSystem.php:1992:                    // @TODO Finish this part!
+./core/inc/classes/main/class_BaseFrameworkSystem.php:250:     // @todo Try to clean these constants up
+./core/inc/classes/main/class_BaseFrameworkSystem.php:475:             // @TODO __CLASS__ does always return BaseFrameworkSystem but not the extending (=child) class
+./core/inc/classes/main/class_BaseFrameworkSystem.php:549:      * @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/controller/web/class_WebStatusController.php:10: * @todo               This controller shall still provide some headlines for sidebars
 ./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:616:     * @todo        Add more generic non-public data for removal
+./core/inc/classes/main/database/backend/class_CachedLocalFileDatabase.php:327:         * @todo        Do some checks on the database directory and files here
+./core/inc/classes/main/database/backend/class_CachedLocalFileDatabase.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/class_BaseFileIo.php:162:      * @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/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/config/class_FrameworkConfiguration.php:223:         * @todo        We have to add some more entries from $_SERVER 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
+./core/index.php:43:    * @todo        This method is old code and needs heavy rewrite and should be moved to ApplicationHelper
 ./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:46:  * @deprecated
+./core/inc/classes.php:9: * @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
 ./core/inc/classes/main/database/class_BaseDatabaseFrontend.php:2:// @DEPRECATED
 ./core/inc/classes/main/handler/class_BaseHandler.php:2:// @DEPRECATED
 ./core/inc/classes/main/handler/raw_data/class_BaseRawDataHandler.php:2:// @DEPRECATED
-./core/inc/classes.php:9: * @deprecated
 ./core/inc/database.php:10: * @deprecated
 ./core/inc/hooks.php:2:// @DEPRECATED
 ./core/inc/includes.php:10: * @deprecated