minor changes for generator
* allow to split client and server generation * allow to override options for handler Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
This commit is contained in:
20
main.go
20
main.go
@@ -12,7 +12,7 @@ import (
|
||||
var (
|
||||
flagDebug = flag.Bool("debug", false, "")
|
||||
flagStandalone = flag.Bool("standalone", false, "")
|
||||
flagComponents = flag.String("components", "micro|rpc", "")
|
||||
flagComponents = flag.String("components", "micro|rpc|client|server", "")
|
||||
)
|
||||
|
||||
func main() {
|
||||
@@ -39,15 +39,27 @@ func (g *Generator) Generate(plugin *protogen.Plugin) error {
|
||||
g.components = *flagComponents
|
||||
plugin.SupportedFeatures = uint64(pluginpb.CodeGeneratorResponse_FEATURE_PROTO3_OPTIONAL)
|
||||
|
||||
var genClient bool
|
||||
var genServer bool
|
||||
|
||||
if strings.Contains(g.components, "server") {
|
||||
genServer = true
|
||||
}
|
||||
if strings.Contains(g.components, "client") {
|
||||
genClient = true
|
||||
}
|
||||
|
||||
// Protoc passes a slice of File structs for us to process
|
||||
for _, component := range strings.Split(g.components, "|") {
|
||||
switch component {
|
||||
case "server", "client":
|
||||
continue
|
||||
case "micro":
|
||||
err = g.microGenerate(component, plugin)
|
||||
err = g.microGenerate(component, plugin, genClient, genServer)
|
||||
case "http":
|
||||
err = g.httpGenerate(component, plugin)
|
||||
err = g.httpGenerate(component, plugin, genClient, genServer)
|
||||
case "grpc", "rpc":
|
||||
err = g.rpcGenerate("rpc", plugin)
|
||||
err = g.rpcGenerate("rpc", plugin, genClient, genServer)
|
||||
case "gorilla":
|
||||
err = g.gorillaGenerate(component, plugin)
|
||||
case "chi":
|
||||
|
||||
Reference in New Issue
Block a user