Add action container structs with descriptor methods.
This commit is contained in:
		@@ -7,6 +7,9 @@ import (
 | 
			
		||||
  {{.Alias}} {{quote .Path}}
 | 
			
		||||
{{- end}}
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
const ServiceType = {{quote .Manifest.ServiceType}}
 | 
			
		||||
 | 
			
		||||
{{range .SCPD.SortedActions}}
 | 
			
		||||
{{- template "action" args "Action" . "Imps" $Imps}}
 | 
			
		||||
{{end}}
 | 
			
		||||
@@ -14,6 +17,18 @@ import (
 | 
			
		||||
 | 
			
		||||
{{define "action"}}
 | 
			
		||||
{{- $Imps := .Imps}}
 | 
			
		||||
type {{.Action.Name}} struct{
 | 
			
		||||
  Request {{.Action.Name}}Request
 | 
			
		||||
  Response {{.Action.Name}}Response
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
var _ {{index $Imps.TypeRefByTypeName "SOAPActionInterface"}} = &{{.Action.Name}}{{"{}"}}
 | 
			
		||||
 | 
			
		||||
func (a *{{.Action.Name}}) ServiceType() string { return ServiceType }
 | 
			
		||||
func (a *{{.Action.Name}}) ActionName() string { return {{quote .Action.Name}} }
 | 
			
		||||
func (a *{{.Action.Name}}) RefRequest() any { return &a.Request }
 | 
			
		||||
func (a *{{.Action.Name}}) RefResponse() any { return &a.Response }
 | 
			
		||||
 | 
			
		||||
type {{.Action.Name}}Request struct
 | 
			
		||||
{{- template "args" args "Args" .Action.InArgs "Imps" $Imps}}
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user