This commit is contained in:
2022-10-11 18:28:33 +08:00
parent ceefabb8e4
commit 268f8665d0
2 changed files with 7 additions and 6 deletions
+2 -2
View File
@@ -6,9 +6,9 @@ interface ActorInterface
{
/**
* @param mixed $message
* @param ActorMessage $message
* @return void
*/
public function process(mixed $message): void;
public function process(ActorMessage $message): void;
}
+5 -4
View File
@@ -47,16 +47,17 @@ class ActorProcess extends BaseProcess
$actorManager = $this->container->get(ActorManager::class);
while (!$this->isStop()) {
$read = json_decode($process->read(), true);
if (is_null($read) || !isset($read['event'])) {
if (is_null($read) || !isset($read['category'])) {
continue;
}
switch ($read['event']) {
$message = new ActorMessage($read['userId'], $read['event'], $read['body']);
switch ($read['category']) {
case ActorState::MESSAGE:
$actorManager->write($read['name'], $read['message']);
$actorManager->write($read['name'], $message);
break;
case ActorState::CREATE:
/** @var ActorInterface $actor */
$actor = $this->container->create($read['class']);
$actor = $this->container->create($read['class'], $read['constrict'], $read['config']);
$actorManager->addActor($actor);
break;
case ActorState::SHUTDOWN: