github.com/keysonZZZ/kmg@v0.0.0-20151121023212-05317bfd7d39/kmgRpc/kmgRpcSwift/tplApiClient.go (about) 1 package kmgRpcSwift 2 3 import ( 4 "bytes" 5 ) 6 7 func (config Api) tplApiClient() string { 8 var _buf bytes.Buffer 9 _buf.WriteString(` 10 func `) 11 _buf.WriteString(config.Name) 12 _buf.WriteString(`(`) 13 _buf.WriteString(config.getClientFuncInParameter()) 14 _buf.WriteString(`)`) 15 if config.OutTypeString != "void" { 16 _buf.WriteString(`->`) 17 _buf.WriteString(config.OutTypeString) 18 } 19 _buf.WriteString(`{ 20 var params: Dictionary<String,AnyObject> = Dictionary() 21 `) 22 for _, arg := range config.InArgsList { 23 _buf.WriteString(` 24 params["`) 25 _buf.WriteString(arg.Name) 26 _buf.WriteString(`"]=`) 27 _buf.WriteString(arg.Name) 28 _buf.WriteString(` 29 `) 30 } 31 _buf.WriteString(` 32 `) 33 if config.OutTypeString != "void" { 34 _buf.WriteString(` 35 var out = `) 36 _buf.WriteString(config.OutTypeString) 37 _buf.WriteString(`() 38 func `) 39 _buf.WriteString(config.Name) 40 _buf.WriteString(`Data(outData:JSON){ 41 `) 42 if config.OutTypeString == "NSString" { 43 _buf.WriteString(` 44 out = outData["Out_0"].stringValue 45 `) 46 } else if config.OutTypeString == "Int" { 47 _buf.WriteString(` 48 out = outData["Out-0"].intValue 49 `) 50 } else if config.OutTypeString == "NSDate" { 51 _buf.WriteString(` 52 out = outData["Out_0"].stringValue.toDate(format: DateFormat.ISO8601)! 53 `) 54 } else { 55 _buf.WriteString(` 56 out.ToData(outData["Out_0"]) 57 `) 58 } 59 _buf.WriteString(` 60 } 61 sendRequest("`) 62 _buf.WriteString(config.Name) 63 _buf.WriteString(`",params:params,callback:`) 64 _buf.WriteString(config.Name) 65 _buf.WriteString(`Data ) 66 return out 67 `) 68 } else { 69 _buf.WriteString(` 70 sendRequest("`) 71 _buf.WriteString(config.Name) 72 _buf.WriteString(`",params:params,callback:{JSON in }) 73 `) 74 } 75 _buf.WriteString(` 76 } 77 `) 78 return _buf.String() 79 }