X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=application%2Fhub%2Fmain%2Fvisitor%2Ftasks%2Fclass_ActiveTaskVisitor.php;h=ecfe21bef227622c8c117ab587ba81cf39bc8dcf;hb=f0da0d019796cabacedb983d6d2b3d5e81840b56;hp=5794ae6bc81ec67bb1a63ee67dd2590a913bde9a;hpb=ebb079776a7a148d22964dd140cf4d541fdf3826;p=hub.git diff --git a/application/hub/main/visitor/tasks/class_ActiveTaskVisitor.php b/application/hub/main/visitor/tasks/class_ActiveTaskVisitor.php index 5794ae6bc..ecfe21bef 100644 --- a/application/hub/main/visitor/tasks/class_ActiveTaskVisitor.php +++ b/application/hub/main/visitor/tasks/class_ActiveTaskVisitor.php @@ -21,7 +21,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ -class ActiveTaskVisitor extends BaseVisitor implements TaskVisitor, QueryVisitor, PoolVisitor { +class ActiveTaskVisitor extends BaseVisitor implements TaskVisitor, QueryConnectorVisitor, PoolVisitor, ListenerVisitor, DecoratorVisitor { /** * Protected constructor * @@ -49,9 +49,9 @@ class ActiveTaskVisitor extends BaseVisitor implements TaskVisitor, QueryVisitor } /** - * Visits the given pool instance + * Visits the given task instance * - * @param $poolInstance A Taskable instance + * @param $taskInstance A Taskable instance * @return void */ public function visitTask (Taskable $taskInstance) { @@ -60,14 +60,14 @@ class ActiveTaskVisitor extends BaseVisitor implements TaskVisitor, QueryVisitor } /** - * Query visitor method for active tasks + * Connector visitor method for active tasks * - * @param $queryInstance A Queryable instance + * @param $connectorInstance A Connectable instance * @return void */ - public function visitQuery (Queryable $queryInstance) { - // Handle all queries - $queryInstance->handleQueries(); + public function visitQueryConnector (Connectable $connectorInstance) { + // Process all pending queries + $connectorInstance->processAllPendingQueries(); } /** @@ -78,7 +78,41 @@ class ActiveTaskVisitor extends BaseVisitor implements TaskVisitor, QueryVisitor */ public function visitPool (Poolable $poolInstance) { // We don't need to visit a pool as an active task because a pool can - // never become a task. + // never become a task. Instead e.g. by a listener pool we should visit + // all listeners one by one + } + + /** + * Query visitor method for active queries + * + * @param $queryInstance A Queryable instance + * @return void + * @todo Does a query needs to perform some actions as an active task? + */ + public function visitQuery (Queryable $queryInstance) { + // Empty for now... + } + + /** + * Visits the given listener instance + * + * @param $listenerInstance A Listenable instance + * @return void + */ + public function visitListener (Listenable $listenerInstance) { + // Do "listen" here + $listenerInstance->doListen(); + } + + /** + * Visits the given decorator instance + * + * @param $decoratorInstance A decorator instance + * @return void + */ + public function visitDecorator (BaseDecorator $decoratorInstance) { + // A decorator itself can never bevome an active task so this method + // remains empty. } }