This commit is contained in:
2021-10-28 16:58:15 +08:00
parent 0da9dac2b8
commit b764cc64aa
2 changed files with 38 additions and 1 deletions
+7 -1
View File
@@ -25,6 +25,12 @@ class GiiJsonRpc extends GiiBase
namespace Rpc;
use Annotation\Mapping;
use Annotation\Target;
use Rpc\Producers\\' . ucfirst($name) . 'RpcService;
#[Target]
#[Mapping(' . ucfirst($name) . 'RpcService::class)]
interface ' . ucfirst($name) . 'RpcInterface
{
@@ -91,7 +97,7 @@ use Rpc\\' . ucfirst($name) . 'RpcInterface;
#[Target]
#[JsonRpc(method: \''.$name.'\', version: \'2.0\')]
#[JsonRpc(method: \'' . $name . '\', version: \'2.0\')]
class ' . ucfirst($name) . 'RpcConsumer extends Controller implements ' . ucfirst($name) . 'RpcInterface
{
+31
View File
@@ -0,0 +1,31 @@
<?php
namespace Annotation;
use Kiri\Kiri;
#[\Attribute(\Attribute::TARGET_CLASS)] class Mapping extends Attribute
{
/**
* @param string $class
*/
public function __construct(public string $class)
{
}
/**
* @param mixed $class
* @param mixed|string $method
* @return mixed
*/
public function execute(mixed $class, mixed $method = ''): mixed
{
Kiri::getDi()->mapping($class, $this->class);
return parent::execute($class, $method);
}
}