func main() { flag.Usage = func() { fmt.Fprintf(os.Stderr, "Usage: %s [options] myservice.wsdl\n", os.Args[0]) flag.PrintDefaults() } flag.Parse() // Show app version if *vers { log.Println(Version) os.Exit(0) } if len(os.Args) < 2 { flag.Usage() os.Exit(0) } wsdlPath := os.Args[len(os.Args)-1] if *outFile == wsdlPath { log.Fatalln("Output file cannot be the same WSDL file") } // load wsdl gowsdl, err := gen.NewGoWSDL(wsdlPath, *pkg, *insecure, *makePublic) if err != nil { log.Fatalln(err) } // generate code gocode, err := gowsdl.Start() if err != nil { log.Fatalln(err) } pkg := "./" + *pkg err = os.Mkdir(pkg, 0744) file, err := os.Create(pkg + "/" + *outFile) if err != nil { log.Fatalln(err) } defer file.Close() data := new(bytes.Buffer) data.Write(gocode["header"]) data.Write(gocode["types"]) data.Write(gocode["operations"]) data.Write(gocode["soap"]) // go fmt the generated code source, err := format.Source(data.Bytes()) if err != nil { file.Write(data.Bytes()) log.Fatalln(err) } file.Write(source) log.Println("Done 💩") }
func main() { flag.Usage = func() { fmt.Fprintf(os.Stderr, "Usage: %s [options] myservice.wsdl\n", os.Args[0]) flag.PrintDefaults() } flag.Parse() // b, err := downloadFile("file:///Users/dan.mullineux/prj/play/src/github.com/hooklift/gowsdl/cmd/gowsdl?dan=4&me=poo", true) // if err != nil { // log.Fatal(err) // } // println(string(b)) // Show app version if *vers { log.Println(Version) os.Exit(0) } if len(os.Args) < 2 { flag.Usage() os.Exit(0) } wsdlPath := os.Args[len(os.Args)-1] if *outFile == wsdlPath { log.Fatalln("Output file cannot be the same WSDL file") } // load wsdl gowsdl, err := gen.NewGoWSDL(wsdlPath, *pkg, *insecure, *dl) if err != nil { log.Fatalln(err) } // generate code gocode, err := gowsdl.Start() if err != nil { log.Fatalln(err) } pkg := "./" + *pkg err = os.Mkdir(pkg, 0744) file, err := os.Create(pkg + "/" + *outFile) if err != nil { log.Fatalln(err) } defer file.Close() data := new(bytes.Buffer) data.Write(gocode["header"]) data.Write(gocode["types"]) data.Write(gocode["operations"]) data.Write(gocode["soap"]) // go fmt the generated code source, err := format.Source(data.Bytes()) if err != nil { file.Write(data.Bytes()) log.Fatalln(err) } file.Write(source) log.Println("Done 💩") }