-
Notifications
You must be signed in to change notification settings - Fork 22
/
Copy pathmain.go.tpl
51 lines (47 loc) · 1.61 KB
/
main.go.tpl
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
{{ $domainName := .Domain }}
{{ $groupName := .GroupName }}
{{ $versionSuffix := .VersionSuffix }}
{{- $serviceSuffix := "" -}}
{{- if not .NoServiceSuffix }}
{{- $serviceSuffix = "Service" }}
{{- end }}
{{- $pkgName := .PackageName -}}
{{- $goPkgOption := "" -}}
{{- with .FileOptions.go_package -}}
{{- $goPkgOption = . -}}
{{- end -}}
package main
import (
{{- if secvtpl $.Pkg2ValidGoPkg }}
{{/* _ "{{$domainName}}/{{$groupName}}/trpc-filter/validation{{$versionSuffix}}" */}}
{{- end }}
_ "{{$domainName}}/{{$groupName}}/trpc-filter/debuglog{{$versionSuffix}}"
_ "{{$domainName}}/{{$groupName}}/trpc-filter/recovery{{$versionSuffix}}"
{{- if (or .ValidateEnabled .SecvEnabled) }}
_ "{{ $domainName }}/{{ $groupName }}/trpc-filter/validation{{ $versionSuffix }}"
{{- end }}
trpc "{{$domainName}}/{{$groupName}}/trpc-go{{$versionSuffix}}"
"{{$domainName}}/{{$groupName}}/trpc-go{{$versionSuffix}}/log"
{{ if ne $goPkgOption "" -}}
pb "{{ trimright ";" $goPkgOption }}"
{{- else -}}
pb "{{$pkgName}}"
{{- end }}
)
{{- $appName := .AppName -}}
{{- $serverName := .ServerName }}
func main() {
s := trpc.NewServer()
{{range $index, $service := .Services}}
{{- $svrNameCamelCase := $service.Name | camelcase -}}
{{- $serviceName := $service.Name -}}
pb.Register{{$svrNameCamelCase}}{{$serviceSuffix}}(s.Service("{{- if and $appName $serverName -}}
trpc.{{$appName}}.{{$serverName}}.{{$serviceName -}}
{{- else -}}
{{- $pkgName}}.{{$serviceName -}}
{{- end -}}"), &{{$svrNameCamelCase|untitle}}Impl{})
{{end -}}
if err := s.Serve(); err != nil {
log.Fatal(err)
}
}