public function connect()
    {
        if ($this->connection) {
            $this->countConnections++;
            return false;
        }
        $connection = $this->implementation->connect($this->params, $errorInfo, $errorCode);
        if (!$connection) {
            throw new Connect($errorInfo, $errorCode);
        }
        $this->connection = $connection;
        $this->countConnections = 1;
        return true;
    }