protected function releaseConnection(Connection $connection): void
    {
        $ip = $connection->getIp();

        if (!$ip) {
            $this->logger->warning('Cannot release connection');
            return;
        }

        if (!isset($this->ips[$ip])) {
            $this->ips[$ip] = 0;
        } else {
            $this->ips[$ip] = max(0, $this->ips[$ip] - 1);
        }

        unset($this->requests[$connection->getId()]);
    }
protected function releaseConnection(Connection $connection): void
    {
        $ip = $connection->getIp();

        if (!$ip) {
            $this->logger->warning('Cannot release connection');
            return;
        }

        if (!isset($this->ips[$ip])) {
            $this->ips[$ip] = 0;
        } else {
            $this->ips[$ip] = max(0, $this->ips[$ip] - 1);
        }

        unset($this->requests[$connection->getId()]);
    }
protected function releaseConnection ( Connection $ connection ) : void { $ ip = $ connection -> getIp ( ) ; if ( ! $ ip ) { $ this -> logger -> warning ( 'Cannot release connection' ) ; return ; } if ( ! isset ( $ this -> ips [ $ ip ] ) ) { $ this -> ips [ $ ip ] = 0 ; } else { $ this -> ips [ $ ip ] = max ( 0 , $ this -> ips [ $ ip ] - 1 ) ; } unset ( $ this -> requests [ $ connection -> getId ( ) ] ) ; }
NOT idempotent, call once per disconnection

@param Connection $connection
NOT idempotent call once per disconnection