]> git.mxchange.org Git - hub.git/blobdiff - application/hub/main/listener/tcp/class_TcpListener.php
Now incoming, outgoing and 'server' pools are possible
[hub.git] / application / hub / main / listener / tcp / class_TcpListener.php
index 0ad6eccd683f41c5609329fbdcbfe478c35dab97..00f78b185df32b4223734a4d9ad8bda2812e7bc8 100644 (file)
@@ -171,7 +171,7 @@ class TcpListener extends BaseListener implements Listenable {
                $poolInstance = ObjectFactory::createObjectByConfiguredName('node_pool_class', array($this));
 
                // Add main socket
-               $poolInstance->addPeer($mainSocket);
+               $poolInstance->addPeer($mainSocket, BaseConnectionHelper::CONNECTION_TYPE_SERVER);
 
                // And add it to this listener
                $this->setPoolInstance($poolInstance);
@@ -201,7 +201,7 @@ class TcpListener extends BaseListener implements Listenable {
         */
        public function doListen () {
                // Get all readers
-               $readers = $this->getPoolInstance()->getAllSockets();
+               $readers = $this->getPoolInstance()->getAllSingleSockets();
                $writers = array();
                $excepts = array();
 
@@ -232,7 +232,7 @@ class TcpListener extends BaseListener implements Listenable {
                        $newSocket = socket_accept($this->getSocketResource());
 
                        // Debug message
-                       /* NOISY-DEBUG: */ $this->debugOutput('[' . __METHOD__ . ':' . __LINE__ . ']: newSocket=' . $newSocket . ',server=' .$this->getSocketResource());
+                       //* NOISY-DEBUG: */ $this->debugOutput('[' . __METHOD__ . ':' . __LINE__ . ']: newSocket=' . $newSocket . ',server=' .$this->getSocketResource());
 
                        // Array for timeout settings
                        $options  = array(
@@ -268,7 +268,7 @@ class TcpListener extends BaseListener implements Listenable {
                        } // END - if
 
                        // Add it to the peers
-                       $this->getPoolInstance()->addPeer($newSocket);
+                       $this->getPoolInstance()->addPeer($newSocket, BaseConnectionHelper::CONNECTION_TYPE_INCOMING);
 
                        // Get peer name
                        if (!socket_getpeername($newSocket, $peerName)) {
@@ -301,7 +301,7 @@ class TcpListener extends BaseListener implements Listenable {
                $currentSocket = $this->getIteratorInstance()->current();
 
                // Handle it here, if not main socket
-               /* NOISY-DEBUG: */ $this->debugOutput('TCP-LISTENER: currentSocket=' . $currentSocket . ',server=' . $this->getSocketResource());
+               /* NOISY-DEBUG: */ $this->debugOutput('TCP-LISTENER: currentSocket=' . $currentSocket[BasePool::SOCKET_ARRAY_RESOURCE] . ',type=' . $currentSocket[BasePool::SOCKET_ARRAY_CONN_TYPE] . ',server=' . $this->getSocketResource());
                if ($currentSocket != $this->getSocketResource()) {
                        // ... or else it will raise warnings like 'Transport endpoint is not connected'
                        $this->getHandlerInstance()->processRawDataFromResource($currentSocket);