feat: add goTypeWithGoPackage
This function allows you to prefix your field of type message with what you defined in the option go_package. Moreover it handles message embedded. In this commit, I rename gometalinter gas option in gosec.
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
// Code generated by protoc-gen-gotemplate
|
||||
{{- $file := .File}}
|
||||
package {{.File.Package}}
|
||||
|
||||
import (
|
||||
@@ -8,4 +9,33 @@ import (
|
||||
|
||||
type Repository interface {
|
||||
{{range $m := .Service.Method}}{{with $t := $m.InputType | getMessageType $.File}} {{$m.Name}}({{range $f := $t.Field}}{{$f.Name|lowerCamelCase}} {{$f| goTypeWithPackage }} {{end}}) ({{with $out := $m.OutputType | getMessageType $.File}}{{range $f := $out.Field}}{{$f | goTypeWithPackage}}, {{end}}{{end}} error){{end}}{{end}}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
// ------------------------- Public SDK -----------------------------
|
||||
{{$pkg := "pb"}}
|
||||
|
||||
|
||||
{{range $m := .Service.Method}}
|
||||
{{with $t := $m.InputType | getMessageType $.File}}
|
||||
{{if and (not $m.ServerStreaming) (not $m.ClientStreaming)}}
|
||||
{{/* ----------------------------- nominal case ---------------------------- */}}
|
||||
// {{$m.Name}} : {{$m | httpVerb}} {{$m | httpPath}}
|
||||
func (sdk *Sdk) {{$m.Name}}(ctx context.Context, {{if $t.OneofDecl}} req *{{$pkg}}.{{$m.Name}}Request,{{else}}{{range $f := $t.Field}}
|
||||
{{$f.Name|lowerCamelCase}} {{$f| goTypeWithGoPackage $.File}},{{end}}{{end}} token, requestID string)({{with $out := $m.OutputType | getMessageType $.File}}{{range $f := $out.Field}}{{$f.Name|lowerCamelCase}} {{$f | goTypeWithGoPackage $.File}}, {{end}}{{end}}err error) {
|
||||
|
||||
out := &{{$pkg}}.{{$m.Name}}Response{}
|
||||
_ = out
|
||||
|
||||
{{with $out := $m.OutputType | getMessageType $.File}}
|
||||
return {{range $f := $out.Field}}out.{{$f.Name|camelCase}}, {{end}}nil
|
||||
{{end}} {{/* with */}}
|
||||
}
|
||||
|
||||
{{end}} {{/* streaming ifs */}}
|
||||
{{end}}{{end}} {{/* range with */}}
|
Reference in New Issue
Block a user