diff options
author | Jens Geyer <jensg@apache.org> | 2013-07-26 23:05:00 +0200 |
---|---|---|
committer | Jens Geyer <jensg@apache.org> | 2013-07-26 23:05:00 +0200 |
commit | 44b19df535fa83855f91d11c2ecf2e73360a5444 (patch) | |
tree | e3e6bfb42bf97970f5088afe224e53aae042b7ab /tutorial/go | |
parent | 7d95246f16234deba11f82c830d1970f6ab14286 (diff) | |
download | thrift-44b19df535fa83855f91d11c2ecf2e73360a5444.tar.gz |
THRIFT-2083 Improve the go lib: Testcase for buffered Transport
Patch: Feng Shen
Diffstat (limited to 'tutorial/go')
-rw-r--r-- | tutorial/go/src/client.go | 4 | ||||
-rw-r--r-- | tutorial/go/src/main.go | 15 | ||||
-rw-r--r-- | tutorial/go/src/server.go | 4 |
3 files changed, 16 insertions, 7 deletions
diff --git a/tutorial/go/src/client.go b/tutorial/go/src/client.go index 114de19f9..7f8d28fa8 100644 --- a/tutorial/go/src/client.go +++ b/tutorial/go/src/client.go @@ -69,9 +69,9 @@ func handleClient(client *tutorial.CalculatorClient) (err error) { return err } -func runClient(transportFactory thrift.TTransportFactory, protocolFactory thrift.TProtocolFactory) error { +func runClient(transportFactory thrift.TTransportFactory, protocolFactory thrift.TProtocolFactory, addr string) error { var transport thrift.TTransport - transport, err := thrift.NewTSocket("localhost:9090") + transport, err := thrift.NewTSocket(addr) if err != nil { fmt.Println("Error opening socket:", err) return err diff --git a/tutorial/go/src/main.go b/tutorial/go/src/main.go index 4b9576eef..d37139460 100644 --- a/tutorial/go/src/main.go +++ b/tutorial/go/src/main.go @@ -37,6 +37,8 @@ func main() { server := flag.Bool("server", false, "Run server") protocol := flag.String("P", "binary", "Specify the protocol (binary, compact, simplejson)") framed := flag.Bool("framed", false, "Use framed transport") + buffered := flag.Bool("buffered", false, "Use buffered transport") + addr := flag.String("addr", "localhost:9090", "Address to listen to") flag.Parse() @@ -55,17 +57,24 @@ func main() { Usage() os.Exit(1) } - transportFactory := thrift.NewTTransportFactory() + + var transportFactory thrift.TTransportFactory + if *buffered { + transportFactory = thrift.NewTBufferedTransportFactory(8192) + } else { + transportFactory = thrift.NewTTransportFactory() + } + if *framed { transportFactory = thrift.NewTFramedTransportFactory(transportFactory) } if *server { - if err := runServer(transportFactory, protocolFactory); err != nil { + if err := runServer(transportFactory, protocolFactory, *addr); err != nil { fmt.Println("error running server:", err) } } else { - if err := runClient(transportFactory, protocolFactory); err != nil { + if err := runClient(transportFactory, protocolFactory, *addr); err != nil { fmt.Println("error running client:", err) } } diff --git a/tutorial/go/src/server.go b/tutorial/go/src/server.go index 929e223d6..aea749e89 100644 --- a/tutorial/go/src/server.go +++ b/tutorial/go/src/server.go @@ -25,8 +25,8 @@ import ( "tutorial" ) -func runServer(transportFactory thrift.TTransportFactory, protocolFactory thrift.TProtocolFactory) error { - transport, err := thrift.NewTServerSocket("localhost:9090") +func runServer(transportFactory thrift.TTransportFactory, protocolFactory thrift.TProtocolFactory, addr string) error { + transport, err := thrift.NewTServerSocket(addr) if err != nil { return err } |