public function checkBuffer()

in provider/fsof/FSOFProtocol.php [89:134]


    public function checkBuffer($client_id, $data)
    {
        //检测头
        $request = $this->checkHeader($client_id, $data);
        //错误的http头
        if ($request === false)
		{
            if (empty($this->buffer_header[$client_id]))
			{
                $this->logger->error("fsof header err.");
                return self::STATUS_ERROR;
            }
			else
			{
                $this->logger->debug("wait head data. fd={$client_id}");
                return self::STATUS_WAIT;
            }
        }

        if ($request->getRequestLen() <= strlen($request->getFullData()))
		{
			if($this->parser->isHearBeatRequest($request))
			{
				//心跳机制
				return self::STATUS_FINISH;
			}
			else
			{
				if ($this->parser->parseRequestBody($request))
				{
                    $this->logger->debug("parse request ok!");
					return self::STATUS_FINISH;
				}
				else
				{
                    $this->logger->error("fsof body err.");
					return self::STATUS_ERROR;
				}
			}
        }
		else
		{
            $this->logger->debug("wait body data. fd={$client_id}");
            return self::STATUS_WAIT;
        }
    }