update to 1.3.0 version.

This commit is contained in:
whale
2020-05-06 17:26:50 +08:00
parent 086c65af26
commit a1b013ee53
13 changed files with 321 additions and 74 deletions

View File

@@ -39,14 +39,14 @@ class MessageEvent implements SwooleEvent
*/
public function onActivate() {
ZMUtil::checkWait();
$conn = ConnectionManager::get($this->frame->fd);
set_coroutine_params(["server" => $this->server, "frame" => $this->frame, "connection" => $conn]);
$conn = ConnectionManager::get(context()->getFrame()->fd);
try {
if ($conn->getType() == "qq") {
$data = json_decode($this->frame->data, true);
$data = json_decode(context()->getFrame()->data, true);
if (isset($data["post_type"])) {
set_coroutine_params(["data" => $data, "connection" => $conn]);
EventHandler::callCQEvent($data, ConnectionManager::get($this->frame->fd), 0);
Console::debug("Calling CQ Event from fd=" . $conn->fd);
EventHandler::callCQEvent($data, ConnectionManager::get(context()->getFrame()->fd), 0);
} else
EventHandler::callCQResponse($data);
}
@@ -56,7 +56,7 @@ class MessageEvent implements SwooleEvent
/** @var ModBase $class */
$class = new $c(["server" => $this->server, "frame" => $this->frame, "connection" => $conn], ModHandleType::SWOOLE_MESSAGE);
call_user_func_array([$class, $v->method], [$conn]);
if ($class->block_continue) break;
if (context()->getCache("block_continue") === true) break;
}
}
} catch (Exception $e) {
@@ -76,7 +76,7 @@ class MessageEvent implements SwooleEvent
/** @var ModBase $class */
$class = new $c(["server" => $this->server, "frame" => $this->frame, "connection" => $conn], ModHandleType::SWOOLE_MESSAGE);
call_user_func_array([$class, $v->method], []);
if ($class->block_continue) break;
if (context()->getCache("block_continue") === true) break;
}
}
return $this;

View File

@@ -120,7 +120,7 @@ class RequestEvent implements SwooleEvent
return $this;
}
set_coroutine_params(["request" => $this->request, "response" => $this->response, "params" => $params]);
context()->setCache("params", $params);
if (in_array(strtoupper($this->request->server["request_method"]), $node["request_method"] ?? [])) { //判断目标方法在不在里面
$c_name = $node["class"];
@@ -171,7 +171,7 @@ class RequestEvent implements SwooleEvent
$c = $v->class;
$class = new $c(["request" => $this->request, "response" => $this->response]);
$r = call_user_func_array([$class, $v->method], []);
if ($class->block_continue) break;
if (context()->getCache("block_continue") === true) break;
}
}

View File

@@ -52,7 +52,7 @@ class WSCloseEvent implements SwooleEvent
/** @var ModBase $class */
$class = new $c(["server" => $this->server, "fd" => $this->fd], ModHandleType::SWOOLE_CLOSE);
call_user_func_array([$class, $v->method], []);
if($class->block_continue) break;
if(context()->getCache("block_continue") === true) break;
}
}
return $this;

View File

@@ -61,7 +61,7 @@ class WSOpenEvent implements SwooleEvent
$c = $v->class;
$class = new $c(["server" => $this->server, "request" => $this->request, "connection" => $this->conn], ModHandleType::SWOOLE_OPEN);
call_user_func_array([$class, $v->method], [$this->conn]);
if ($class->block_continue) break;
if (context()->getCache("block_continue") === true) break;
}
}
return $this;
@@ -77,7 +77,7 @@ class WSOpenEvent implements SwooleEvent
/** @var ModBase $class */
$class = new $v["class"](["server" => $this->server, "request" => $this->request, "connection" => $this->conn], ModHandleType::SWOOLE_OPEN);
call_user_func_array([$class, $v["method"]], [$this->conn]);
if ($class->block_continue) break;
if (context()->getCache("block_continue") === true) break;
}
}
return $this;

View File

@@ -109,7 +109,7 @@ class WorkerStartEvent implements SwooleEvent
/** @var ModBase $class */
$class = new $class_name(["server" => $this->server, "worker_id" => $this->worker_id], ModHandleType::SWOOLE_WORKER_START);
call_user_func_array([$class, $v->method], []);
if ($class->block_continue) break;
if (context()->getCache("block_continue") === true) break;
}
}
return $this;