From 8c491e4290ac4515970c545d9d15e86d9e7773b9 Mon Sep 17 00:00:00 2001 From: crazywhalecc Date: Thu, 12 Jan 2023 09:42:16 +0800 Subject: [PATCH] separate ZMPlugin to traits --- src/ZM/ZMApplication.php | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/ZM/ZMApplication.php b/src/ZM/ZMApplication.php index c8ee8d6b..55153389 100644 --- a/src/ZM/ZMApplication.php +++ b/src/ZM/ZMApplication.php @@ -7,6 +7,7 @@ namespace ZM; use ZM\Command\Server\ServerStartCommand; use ZM\Exception\SingletonViolationException; use ZM\Plugin\PluginManager; +use ZM\Plugin\PluginMeta; use ZM\Plugin\ZMPlugin; class ZMApplication extends ZMPlugin @@ -20,13 +21,12 @@ class ZMApplication extends ZMPlugin /** * @throws SingletonViolationException */ - public function __construct(mixed $dir = null) + public function __construct() { if (self::$obj !== null) { throw new SingletonViolationException(self::class); } self::$obj = $this; // 用于标记已经初始化完成 - parent::__construct($dir ?? (__DIR__ . '/../..')); $this->args = ServerStartCommand::exportOptionArray(); } @@ -47,7 +47,9 @@ class ZMApplication extends ZMPlugin */ public function run() { - PluginManager::addPlugin(['name' => 'native-app', 'object' => $this]); + $meta = new PluginMeta(['name' => 'native'], ZM_PLUGIN_TYPE_NATIVE); + $meta->bindEntity($this); + PluginManager::addPlugin($meta); (new Framework($this->args))->init()->start(); } }