@@ -45,7 +45,9 @@ func (g *generator) Generate(targets []*descriptor.File) ([]*descriptor.Response
4545 doc .Components = & components
4646
4747 for _ , msg := range t .Messages {
48- g .addMessageToSchemes (msg , components .Schemas )
48+ msgName := g .getMessageName (msg .FQMN ())
49+ schemaRef := g .generateMessageSchema (msg , components .Schemas )
50+ components .Schemas [msgName ] = schemaRef
4951 }
5052
5153 contentBytes , err := g .format .MarshalOpenAPIDoc (doc )
@@ -69,13 +71,12 @@ func (g *generator) Generate(targets []*descriptor.File) ([]*descriptor.Response
6971 return respFiles , nil
7072}
7173
72- func (g * generator ) addMessageToSchemes (msg * descriptor.Message , schemas openapi3.Schemas ) {
74+ func (g * generator ) generateMessageSchema (msg * descriptor.Message , schemas openapi3.Schemas ) * openapi3. SchemaRef {
7375 msgName := g .getMessageName (msg .FQMN ())
7476 if scheme , ok := wktSchemas [msgName ]; ok {
75- schemas [ msgName ] = & openapi3.SchemaRef {
77+ return & openapi3.SchemaRef {
7678 Value : scheme ,
7779 }
78- return
7980 }
8081
8182 schema := & openapi3.Schema {
@@ -90,7 +91,7 @@ func (g *generator) addMessageToSchemes(msg *descriptor.Message, schemas openapi
9091
9192 schema .Properties = properties
9293
93- schemas [ msgName ] = & openapi3.SchemaRef {
94+ return & openapi3.SchemaRef {
9495 Value : schema ,
9596 }
9697}
0 commit comments