Skip to content

Commit

Permalink
Add generate server stub from wsdl.
Browse files Browse the repository at this point in the history
  • Loading branch information
sfqsfq authored and [email protected] committed Jan 17, 2020
1 parent 951dee4 commit f8b3212
Show file tree
Hide file tree
Showing 7 changed files with 603 additions and 0 deletions.
19 changes: 19 additions & 0 deletions cmd/gowsdl/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -136,5 +136,24 @@ func main() {

file.Write(source)

// server
serverFile, err := os.Create(pkg + "/" + "server" + *outFile)
if err != nil {
log.Fatalln(err)
}
defer serverFile.Close()

serverData := new(bytes.Buffer)
serverData.Write(gocode["server_header"])
serverData.Write(gocode["server_wsdl"])
serverData.Write(gocode["server"])

serverSource, err := format.Source(serverData.Bytes())
if err != nil {
serverFile.Write(serverData.Bytes())
log.Fatalln(err)
}
serverFile.Write(serverSource)

log.Println("Done 👍")
}
35 changes: 35 additions & 0 deletions example/server/example.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
package main

import (
"fmt"
"net/http"
"time"

"github.com/hooklift/gowsdl/example/server/gen"
"github.com/hooklift/gowsdl/soap"
)

var done = make(chan struct{})

func client() {
client := soap.NewClient("http://127.0.0.1:8000")
service := gen.NewMNBArfolyamServiceType(client)
resp, err := service.GetInfoSoap(&gen.GetInfo{
Id: "shenfuqiang",
})
fmt.Println(resp.GetInfoResult, err)
done <- struct{}{}
}

// use fixtures/test.wsdl
func main() {
http.HandleFunc("/", gen.Endpoint)
go func() {
time.Sleep(time.Second * 1)
client()
}()
go func() {
http.ListenAndServe(":8000", nil)
}()
<-done
}
80 changes: 80 additions & 0 deletions example/server/gen/myservice.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

239 changes: 239 additions & 0 deletions example/server/gen/servermyservice.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading

0 comments on commit f8b3212

Please sign in to comment.