wenbinye/tars-gen

TARS PHP代码生成器

安装数量: 10,269

依赖项: 4

建议者: 0

安全性: 0

星标: 0

关注者: 2

分支: 0

开放问题: 1

类型:应用程序

0.4.2 2021-11-15 09:00 UTC

README

安装

composer require --dev wenbinye/tars-gen:^0.3

使用

$ ./vendor/bin/tars-gen

集成到composer

在composer.json中添加配置

{
  "scripts": {
     "gen": "./vendor/bin/tars-gen"
  }
}

生成器配置文件为tars/config.json文件。配置文件示例:

{
    "client": {
        "servants": {
            "Hello": "TestApp.HelloServer.HelloObj"
        }
    }
}

配置中servant, client分别对应生成服务提供方接口代码和客户端代码。

配置项包括:

  • namespace 代码生成的名字空间,默认会读取项目composer.json文件中第一个psr-4规则,client添加'integration',servant添加'servant'
  • output代码生成目录,默认会使用composer.json第一个psr-4规则根据psr-4规则计算输出目录
  • flat 是否将文件中的module加入到命名空间中,默认对于client为false,对于servant为true
  • tars_path tars文件目录,默认为client为tars/client, servant为tars/servant
  • servants tars服务名列表,通过{moduleName}.{interfaceName}{interfaceName}查询

tars文件目录结构通常包含servant和client两个目录。如果确定本项目不会提供tars rpc服务,可以将所有client的定义文件都放到tars目录下,然后设置client.tars_path为"tars"。