本文整理汇总了Golang中thrift.TTransport类的典型用法代码示例。如果您正苦于以下问题:Golang TTransport类的具体用法?Golang TTransport怎么用?Golang TTransport使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了TTransport类的14个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: RunSocketTestSuite
func RunSocketTestSuite(t *testing.T, protocolFactory thrift.TProtocolFactory,
transportFactory thrift.TTransportFactory) {
// server
var err error
addr = FindAvailableTCPServerPort()
serverTransport, err := thrift.NewTServerSocketTimeout(addr.String(), TIMEOUT)
if err != nil {
t.Fatal("Unable to create server socket", err)
}
processor := thrifttest.NewThriftTestProcessor(NewThriftTestHandler())
server = thrift.NewTSimpleServer4(processor, serverTransport, transportFactory, protocolFactory)
server.Listen()
go server.Serve()
// client
var transport thrift.TTransport = thrift.NewTSocketFromAddrTimeout(addr, TIMEOUT)
transport = transportFactory.GetTransport(transport)
var protocol thrift.TProtocol = protocolFactory.GetProtocol(transport)
thriftTestClient := thrifttest.NewThriftTestClientProtocol(transport, protocol, protocol)
err = transport.Open()
if err != nil {
t.Fatal("Unable to open client socket", err)
}
driver := NewThriftTestDriver(t, thriftTestClient)
driver.Start()
}
示例2: main
func main() {
flag.Usage = Usage
var host string
var port int
var protocol string
var urlString string
var framed bool
var useHttp bool
var help bool
var parsedUrl url.URL
var trans thrift.TTransport
flag.Usage = Usage
flag.StringVar(&host, "h", "localhost", "Specify host and port")
flag.IntVar(&port, "p", 9090, "Specify port")
flag.StringVar(&protocol, "P", "binary", "Specify the protocol (binary, compact, simplejson, json)")
flag.StringVar(&urlString, "u", "", "Specify the url")
flag.BoolVar(&framed, "framed", false, "Use framed transport")
flag.BoolVar(&useHttp, "http", false, "Use http")
flag.BoolVar(&help, "help", false, "See usage string")
flag.Parse()
if help || flag.NArg() == 0 {
flag.Usage()
}
if len(urlString) > 0 {
parsedUrl, err := url.Parse(urlString)
if err != nil {
fmt.Fprint(os.Stderr, "Error parsing URL: ", err.Error(), "\n")
flag.Usage()
}
host = parsedUrl.Host
useHttp = len(parsedUrl.Scheme) <= 0 || parsedUrl.Scheme == "http"
} else if useHttp {
_, err := url.Parse(fmt.Sprint("http://", host, ":", port))
if err != nil {
fmt.Fprint(os.Stderr, "Error parsing URL: ", err.Error(), "\n")
flag.Usage()
}
}
cmd := flag.Arg(0)
var err error
if useHttp {
trans, err = thrift.NewTHttpClient(parsedUrl.String())
} else {
addr, err := net.ResolveTCPAddr("tcp", fmt.Sprint(host, ":", port))
if err != nil {
fmt.Fprint(os.Stderr, "Error resolving address", err.Error())
os.Exit(1)
}
trans, err = thrift.NewTNonblockingSocketAddr(addr)
if framed {
trans = thrift.NewTFramedTransport(trans)
}
}
if err != nil {
fmt.Fprint(os.Stderr, "Error creating transport", err.Error())
os.Exit(1)
}
defer trans.Close()
var protocolFactory thrift.TProtocolFactory
switch protocol {
case "compact":
protocolFactory = thrift.NewTCompactProtocolFactory()
break
case "simplejson":
protocolFactory = thrift.NewTSimpleJSONProtocolFactory()
break
case "json":
protocolFactory = thrift.NewTJSONProtocolFactory()
break
case "binary", "":
protocolFactory = thrift.NewTBinaryProtocolFactoryDefault()
break
default:
fmt.Fprint(os.Stderr, "Invalid protocol specified: ", protocol, "\n")
Usage()
os.Exit(1)
}
client := Cassandra.NewCassandraClientFactory(trans, protocolFactory)
if err = trans.Open(); err != nil {
fmt.Fprint(os.Stderr, "Error opening socket to ", host, ":", port, " ", err.Error())
os.Exit(1)
}
switch cmd {
case "login":
if flag.NArg()-1 != 1 {
fmt.Fprint(os.Stderr, "Login requires 1 args\n")
flag.Usage()
}
arg958 := flag.Arg(1)
mbTrans959 := thrift.NewTMemoryBufferLen(len(arg958))
defer mbTrans959.Close()
_, err960 := mbTrans959.WriteString(arg958)
if err960 != nil {
Usage()
return
}
factory961 := thrift.NewTSimpleJSONProtocolFactory()
//.........这里部分代码省略.........
示例3: StartClient
func StartClient(
host string,
port int64,
domain_socket string,
transport string,
protocol string,
ssl bool) (client *thrifttest.ThriftTestClient, err error) {
hostPort := fmt.Sprintf("%s:%d", host, port)
var protocolFactory thrift.TProtocolFactory
switch protocol {
case "compact":
protocolFactory = thrift.NewTCompactProtocolFactory()
case "simplejson":
protocolFactory = thrift.NewTSimpleJSONProtocolFactory()
case "json":
protocolFactory = thrift.NewTJSONProtocolFactory()
case "binary":
protocolFactory = thrift.NewTBinaryProtocolFactoryDefault()
default:
return nil, fmt.Errorf("Invalid protocol specified %s", protocol)
}
if debugClientProtocol {
protocolFactory = thrift.NewTDebugProtocolFactory(protocolFactory, "client:")
}
var trans thrift.TTransport
if ssl {
trans, err = thrift.NewTSSLSocket(hostPort, &tls.Config{InsecureSkipVerify: true})
} else {
if domain_socket != "" {
trans, err = thrift.NewTSocket(domain_socket)
} else {
trans, err = thrift.NewTSocket(hostPort)
}
}
if err != nil {
return nil, err
}
switch transport {
case "http":
trans, err = thrift.NewTHttpClient(fmt.Sprintf("http://%s/service", hostPort))
if err != nil {
return nil, err
}
case "framed":
trans = thrift.NewTFramedTransport(trans)
case "buffered":
trans = thrift.NewTBufferedTransport(trans, 8192)
case "":
trans = trans
default:
return nil, fmt.Errorf("Invalid transport specified %s", transport)
}
if err = trans.Open(); err != nil {
return nil, err
}
client = thrifttest.NewThriftTestClientFactory(trans, protocolFactory)
return
}
示例4: main
func main() {
flag.Usage = Usage
var host string
var port int
var protocol string
var urlString string
var framed bool
var useHttp bool
var help bool
var url http.URL
var trans thrift.TTransport
flag.Usage = Usage
flag.StringVar(&host, "h", "localhost", "Specify host and port")
flag.IntVar(&port, "p", 9090, "Specify port")
flag.StringVar(&protocol, "P", "binary", "Specify the protocol (binary, compact, simplejson, json)")
flag.StringVar(&urlString, "u", "", "Specify the url")
flag.BoolVar(&framed, "framed", false, "Use framed transport")
flag.BoolVar(&useHttp, "http", false, "Use http")
flag.BoolVar(&help, "help", false, "See usage string")
flag.Parse()
if help || flag.NArg() == 0 {
flag.Usage()
}
if len(urlString) > 0 {
url, err := http.ParseURL(urlString)
if err != nil {
fmt.Fprint(os.Stderr, "Error parsing URL: ", err.Error(), "\n")
flag.Usage()
}
host = url.Host
useHttp = len(url.Scheme) <= 0 || url.Scheme == "http"
} else if useHttp {
_, err := http.ParseURL(fmt.Sprint("http://", host, ":", port))
if err != nil {
fmt.Fprint(os.Stderr, "Error parsing URL: ", err.Error(), "\n")
flag.Usage()
}
}
cmd := flag.Arg(0)
var err error
if useHttp {
trans, err = thrift.NewTHttpClient(url.Raw)
} else {
addr, err := net.ResolveTCPAddr("tcp", fmt.Sprint(host, ":", port))
if err != nil {
fmt.Fprint(os.Stderr, "Error resolving address", err.Error())
os.Exit(1)
}
trans, err = thrift.NewTNonblockingSocketAddr(addr)
if framed {
trans = thrift.NewTFramedTransport(trans)
}
}
if err != nil {
fmt.Fprint(os.Stderr, "Error creating transport", err.Error())
os.Exit(1)
}
defer trans.Close()
var protocolFactory thrift.TProtocolFactory
switch protocol {
case "compact":
protocolFactory = thrift.NewTCompactProtocolFactory()
break
case "simplejson":
protocolFactory = thrift.NewTSimpleJSONProtocolFactory()
break
case "json":
protocolFactory = thrift.NewTJSONProtocolFactory()
break
case "binary", "":
protocolFactory = thrift.NewTBinaryProtocolFactoryDefault()
break
default:
fmt.Fprint(os.Stderr, "Invalid protocol specified: ", protocol, "\n")
Usage()
os.Exit(1)
}
client := hive_metastore.NewThriftHiveMetastoreClientFactory(trans, protocolFactory)
if err = trans.Open(); err != nil {
fmt.Fprint(os.Stderr, "Error opening socket to ", host, ":", port, " ", err.Error())
os.Exit(1)
}
switch cmd {
case "create_database":
if flag.NArg()-1 != 1 {
fmt.Fprint(os.Stderr, "CreateDatabase requires 1 args\n")
flag.Usage()
}
arg1889 := flag.Arg(1)
mbTrans1890 := thrift.NewTMemoryBufferLen(len(arg1889))
defer mbTrans1890.Close()
_, err1891 := mbTrans1890.WriteString(arg1889)
if err1891 != nil {
Usage()
return
}
factory1892 := thrift.NewTSimpleJSONProtocolFactory()
//.........这里部分代码省略.........
示例5: main
func main() {
flag.Usage = Usage
var host string
var port int
var protocol string
var urlString string
var framed bool
var useHttp bool
var help bool
var parsedUrl url.URL
var trans thrift.TTransport
flag.Usage = Usage
flag.StringVar(&host, "h", "localhost", "Specify host and port")
flag.IntVar(&port, "p", 9090, "Specify port")
flag.StringVar(&protocol, "P", "binary", "Specify the protocol (binary, compact, simplejson, json)")
flag.StringVar(&urlString, "u", "", "Specify the url")
flag.BoolVar(&framed, "framed", false, "Use framed transport")
flag.BoolVar(&useHttp, "http", false, "Use http")
flag.BoolVar(&help, "help", false, "See usage string")
flag.Parse()
if help || flag.NArg() == 0 {
flag.Usage()
}
if len(urlString) > 0 {
parsedUrl, err := url.Parse(urlString)
if err != nil {
fmt.Fprint(os.Stderr, "Error parsing URL: ", err.Error(), "\n")
flag.Usage()
}
host = parsedUrl.Host
useHttp = len(parsedUrl.Scheme) <= 0 || parsedUrl.Scheme == "http"
} else if useHttp {
_, err := url.Parse(fmt.Sprint("http://", host, ":", port))
if err != nil {
fmt.Fprint(os.Stderr, "Error parsing URL: ", err.Error(), "\n")
flag.Usage()
}
}
cmd := flag.Arg(0)
var err error
if useHttp {
trans, err = thrift.NewTHttpClient(parsedUrl.String())
} else {
addr, err := net.ResolveTCPAddr("tcp", fmt.Sprint(host, ":", port))
if err != nil {
fmt.Fprint(os.Stderr, "Error resolving address", err.Error())
os.Exit(1)
}
trans, err = thrift.NewTNonblockingSocketAddr(addr)
if framed {
trans = thrift.NewTFramedTransport(trans)
}
}
if err != nil {
fmt.Fprint(os.Stderr, "Error creating transport", err.Error())
os.Exit(1)
}
defer trans.Close()
var protocolFactory thrift.TProtocolFactory
switch protocol {
case "compact":
protocolFactory = thrift.NewTCompactProtocolFactory()
break
case "simplejson":
protocolFactory = thrift.NewTSimpleJSONProtocolFactory()
break
case "json":
protocolFactory = thrift.NewTJSONProtocolFactory()
break
case "binary", "":
protocolFactory = thrift.NewTBinaryProtocolFactoryDefault()
break
default:
fmt.Fprint(os.Stderr, "Invalid protocol specified: ", protocol, "\n")
Usage()
os.Exit(1)
}
client := simple.NewContainerOfEnumsTestServiceClientFactory(trans, protocolFactory)
if err = trans.Open(); err != nil {
fmt.Fprint(os.Stderr, "Error opening socket to ", host, ":", port, " ", err.Error())
os.Exit(1)
}
switch cmd {
case "echo":
if flag.NArg()-1 != 1 {
fmt.Fprint(os.Stderr, "Echo requires 1 args\n")
flag.Usage()
}
arg33 := flag.Arg(1)
mbTrans34 := thrift.NewTMemoryBufferLen(len(arg33))
defer mbTrans34.Close()
_, err35 := mbTrans34.WriteString(arg33)
if err35 != nil {
Usage()
return
}
factory36 := thrift.NewTSimpleJSONProtocolFactory()
//.........这里部分代码省略.........
示例6: main
func main() {
flag.Usage = Usage
var host string
var port int
var protocol string
var urlString string
var framed bool
var useHttp bool
var parsedUrl url.URL
var trans thrift.TTransport
_ = strconv.Atoi
_ = math.Abs
flag.Usage = Usage
flag.StringVar(&host, "h", "localhost", "Specify host and port")
flag.IntVar(&port, "p", 9090, "Specify port")
flag.StringVar(&protocol, "P", "binary", "Specify the protocol (binary, compact, simplejson, json)")
flag.StringVar(&urlString, "u", "", "Specify the url")
flag.BoolVar(&framed, "framed", false, "Use framed transport")
flag.BoolVar(&useHttp, "http", false, "Use http")
flag.Parse()
if len(urlString) > 0 {
parsedUrl, err := url.Parse(urlString)
if err != nil {
fmt.Fprintln(os.Stderr, "Error parsing URL: ", err)
flag.Usage()
}
host = parsedUrl.Host
useHttp = len(parsedUrl.Scheme) <= 0 || parsedUrl.Scheme == "http"
} else if useHttp {
_, err := url.Parse(fmt.Sprint("http://", host, ":", port))
if err != nil {
fmt.Fprintln(os.Stderr, "Error parsing URL: ", err)
flag.Usage()
}
}
cmd := flag.Arg(0)
var err error
if useHttp {
trans, err = thrift.NewTHttpClient(parsedUrl.String())
} else {
portStr := fmt.Sprint(port)
if strings.Contains(host, ":") {
host, portStr, err = net.SplitHostPort(host)
if err != nil {
fmt.Fprintln(os.Stderr, "error with host:", err)
os.Exit(1)
}
}
trans, err = thrift.NewTSocket(net.JoinHostPort(host, portStr))
if err != nil {
fmt.Fprintln(os.Stderr, "error resolving address:", err)
os.Exit(1)
}
if framed {
trans = thrift.NewTFramedTransport(trans)
}
}
if err != nil {
fmt.Fprintln(os.Stderr, "Error creating transport", err)
os.Exit(1)
}
defer trans.Close()
var protocolFactory thrift.TProtocolFactory
switch protocol {
case "compact":
protocolFactory = thrift.NewTCompactProtocolFactory()
break
case "simplejson":
protocolFactory = thrift.NewTSimpleJSONProtocolFactory()
break
case "json":
protocolFactory = thrift.NewTJSONProtocolFactory()
break
case "binary", "":
protocolFactory = thrift.NewTBinaryProtocolFactoryDefault()
break
default:
fmt.Fprintln(os.Stderr, "Invalid protocol specified: ", protocol)
Usage()
os.Exit(1)
}
client := thrifttest.NewSecondServiceClientFactory(trans, protocolFactory)
if err := trans.Open(); err != nil {
fmt.Fprintln(os.Stderr, "Error opening socket to ", host, ":", port, " ", err)
os.Exit(1)
}
switch cmd {
case "blahBlah":
if flag.NArg()-1 != 0 {
fmt.Fprintln(os.Stderr, "BlahBlah requires 0 args")
flag.Usage()
}
fmt.Print(client.BlahBlah())
fmt.Print("\n")
break
case "secondtestString":
if flag.NArg()-1 != 1 {
//.........这里部分代码省略.........
示例7: main
func main() {
flag.Usage = Usage
var host string
var port int
var protocol string
var urlString string
var framed bool
var useHttp bool
var parsedUrl url.URL
var trans thrift.TTransport
_ = strconv.Atoi
_ = math.Abs
flag.Usage = Usage
flag.StringVar(&host, "h", "localhost", "Specify host and port")
flag.IntVar(&port, "p", 9090, "Specify port")
flag.StringVar(&protocol, "P", "binary", "Specify the protocol (binary, compact, simplejson, json)")
flag.StringVar(&urlString, "u", "", "Specify the url")
flag.BoolVar(&framed, "framed", false, "Use framed transport")
flag.BoolVar(&useHttp, "http", false, "Use http")
flag.Parse()
if len(urlString) > 0 {
parsedUrl, err := url.Parse(urlString)
if err != nil {
fmt.Fprintln(os.Stderr, "Error parsing URL: ", err)
flag.Usage()
}
host = parsedUrl.Host
useHttp = len(parsedUrl.Scheme) <= 0 || parsedUrl.Scheme == "http"
} else if useHttp {
_, err := url.Parse(fmt.Sprint("http://", host, ":", port))
if err != nil {
fmt.Fprintln(os.Stderr, "Error parsing URL: ", err)
flag.Usage()
}
}
cmd := flag.Arg(0)
var err error
if useHttp {
trans, err = thrift.NewTHttpClient(parsedUrl.String())
} else {
portStr := fmt.Sprint(port)
if strings.Contains(host, ":") {
host, portStr, err = net.SplitHostPort(host)
if err != nil {
fmt.Fprintln(os.Stderr, "error with host:", err)
os.Exit(1)
}
}
trans, err = thrift.NewTSocket(net.JoinHostPort(host, portStr))
if err != nil {
fmt.Fprintln(os.Stderr, "error resolving address:", err)
os.Exit(1)
}
if framed {
trans = thrift.NewTFramedTransport(trans)
}
}
if err != nil {
fmt.Fprintln(os.Stderr, "Error creating transport", err)
os.Exit(1)
}
defer trans.Close()
var protocolFactory thrift.TProtocolFactory
switch protocol {
case "compact":
protocolFactory = thrift.NewTCompactProtocolFactory()
break
case "simplejson":
protocolFactory = thrift.NewTSimpleJSONProtocolFactory()
break
case "json":
protocolFactory = thrift.NewTJSONProtocolFactory()
break
case "binary", "":
protocolFactory = thrift.NewTBinaryProtocolFactoryDefault()
break
default:
fmt.Fprintln(os.Stderr, "Invalid protocol specified: ", protocol)
Usage()
os.Exit(1)
}
client := thrifttest.NewThriftTestClientFactory(trans, protocolFactory)
if err := trans.Open(); err != nil {
fmt.Fprintln(os.Stderr, "Error opening socket to ", host, ":", port, " ", err)
os.Exit(1)
}
switch cmd {
case "testVoid":
if flag.NArg()-1 != 0 {
fmt.Fprintln(os.Stderr, "TestVoid requires 0 args")
flag.Usage()
}
fmt.Print(client.TestVoid())
fmt.Print("\n")
break
case "testString":
if flag.NArg()-1 != 1 {
//.........这里部分代码省略.........
示例8: main
func main() {
flag.Usage = Usage
var host string
var port int
var protocol string
var urlString string
var framed bool
var useHttp bool
var help bool
var parsedUrl url.URL
var trans thrift.TTransport
flag.Usage = Usage
flag.StringVar(&host, "h", "localhost", "Specify host and port")
flag.IntVar(&port, "p", 9090, "Specify port")
flag.StringVar(&protocol, "P", "binary", "Specify the protocol (binary, compact, simplejson, json)")
flag.StringVar(&urlString, "u", "", "Specify the url")
flag.BoolVar(&framed, "framed", false, "Use framed transport")
flag.BoolVar(&useHttp, "http", false, "Use http")
flag.BoolVar(&help, "help", false, "See usage string")
flag.Parse()
if help || flag.NArg() == 0 {
flag.Usage()
}
if len(urlString) > 0 {
parsedUrl, err := url.Parse(urlString)
if err != nil {
fmt.Fprint(os.Stderr, "Error parsing URL: ", err.Error(), "\n")
flag.Usage()
}
host = parsedUrl.Host
useHttp = len(parsedUrl.Scheme) <= 0 || parsedUrl.Scheme == "http"
} else if useHttp {
_, err := url.Parse(fmt.Sprint("http://", host, ":", port))
if err != nil {
fmt.Fprint(os.Stderr, "Error parsing URL: ", err.Error(), "\n")
flag.Usage()
}
}
cmd := flag.Arg(0)
var err error
if useHttp {
trans, err = thrift.NewTHttpClient(parsedUrl.String())
} else {
addr, err := net.ResolveTCPAddr("tcp", fmt.Sprint(host, ":", port))
if err != nil {
fmt.Fprint(os.Stderr, "Error resolving address", err.Error())
os.Exit(1)
}
trans, err = thrift.NewTNonblockingSocketAddr(addr)
if framed {
trans = thrift.NewTFramedTransport(trans)
}
}
if err != nil {
fmt.Fprint(os.Stderr, "Error creating transport", err.Error())
os.Exit(1)
}
defer trans.Close()
var protocolFactory thrift.TProtocolFactory
switch protocol {
case "compact":
protocolFactory = thrift.NewTCompactProtocolFactory()
break
case "simplejson":
protocolFactory = thrift.NewTSimpleJSONProtocolFactory()
break
case "json":
protocolFactory = thrift.NewTJSONProtocolFactory()
break
case "binary", "":
protocolFactory = thrift.NewTBinaryProtocolFactoryDefault()
break
default:
fmt.Fprint(os.Stderr, "Invalid protocol specified: ", protocol, "\n")
Usage()
os.Exit(1)
}
client := tutorial.NewCalculatorClientFactory(trans, protocolFactory)
if err = trans.Open(); err != nil {
fmt.Fprint(os.Stderr, "Error opening socket to ", host, ":", port, " ", err.Error())
os.Exit(1)
}
switch cmd {
case "ping":
if flag.NArg()-1 != 0 {
fmt.Fprint(os.Stderr, "Ping requires 0 args\n")
flag.Usage()
}
fmt.Print(client.Ping())
fmt.Print("\n")
break
case "add":
if flag.NArg()-1 != 2 {
fmt.Fprint(os.Stderr, "Add requires 2 args\n")
flag.Usage()
}
tmp0, err62 := (strconv.Atoi(flag.Arg(1)))
//.........这里部分代码省略.........
示例9: main
func main() {
flag.Usage = Usage
var host string
var port int
var protocol string
var urlString string
var framed bool
var useHttp bool
var help bool
var parsedUrl url.URL
var trans thrift.TTransport
flag.Usage = Usage
flag.StringVar(&host, "h", "localhost", "Specify host and port")
flag.IntVar(&port, "p", 9090, "Specify port")
flag.StringVar(&protocol, "P", "binary", "Specify the protocol (binary, compact, simplejson, json)")
flag.StringVar(&urlString, "u", "", "Specify the url")
flag.BoolVar(&framed, "framed", false, "Use framed transport")
flag.BoolVar(&useHttp, "http", false, "Use http")
flag.BoolVar(&help, "help", false, "See usage string")
flag.Parse()
if help || flag.NArg() == 0 {
flag.Usage()
}
if len(urlString) > 0 {
parsedUrl, err := url.Parse(urlString)
if err != nil {
fmt.Fprint(os.Stderr, "Error parsing URL: ", err.Error(), "\n")
flag.Usage()
}
host = parsedUrl.Host
useHttp = len(parsedUrl.Scheme) <= 0 || parsedUrl.Scheme == "http"
} else if useHttp {
_, err := url.Parse(fmt.Sprint("http://", host, ":", port))
if err != nil {
fmt.Fprint(os.Stderr, "Error parsing URL: ", err.Error(), "\n")
flag.Usage()
}
}
cmd := flag.Arg(0)
var err error
if useHttp {
trans, err = thrift.NewTHttpClient(parsedUrl.String())
} else {
addr, err := net.ResolveTCPAddr("tcp", fmt.Sprint(host, ":", port))
if err != nil {
fmt.Fprint(os.Stderr, "Error resolving address", err.Error())
os.Exit(1)
}
trans, err = thrift.NewTNonblockingSocketAddr(addr)
if framed {
trans = thrift.NewTFramedTransport(trans)
}
}
if err != nil {
fmt.Fprint(os.Stderr, "Error creating transport", err.Error())
os.Exit(1)
}
defer trans.Close()
var protocolFactory thrift.TProtocolFactory
switch protocol {
case "compact":
protocolFactory = thrift.NewTCompactProtocolFactory()
break
case "simplejson":
protocolFactory = thrift.NewTSimpleJSONProtocolFactory()
break
case "json":
protocolFactory = thrift.NewTJSONProtocolFactory()
break
case "binary", "":
protocolFactory = thrift.NewTBinaryProtocolFactoryDefault()
break
default:
fmt.Fprint(os.Stderr, "Invalid protocol specified: ", protocol, "\n")
Usage()
os.Exit(1)
}
client := librarytest.NewServiceForExceptionWithAMapClientFactory(trans, protocolFactory)
if err = trans.Open(); err != nil {
fmt.Fprint(os.Stderr, "Error opening socket to ", host, ":", port, " ", err.Error())
os.Exit(1)
}
switch cmd {
case "methodThatThrowsAnException":
if flag.NArg()-1 != 0 {
fmt.Fprint(os.Stderr, "MethodThatThrowsAnException requires 0 args\n")
flag.Usage()
}
fmt.Print(client.MethodThatThrowsAnException())
fmt.Print("\n")
break
case "":
Usage()
break
default:
fmt.Fprint(os.Stderr, "Invalid function ", cmd, "\n")
}
//.........这里部分代码省略.........
示例10: main
func main() {
flag.Usage = Usage
var host string
var port int
var protocol string
var urlString string
var framed bool
var useHttp bool
var help bool
var parsedUrl url.URL
var trans thrift.TTransport
flag.Usage = Usage
flag.StringVar(&host, "h", "localhost", "Specify host and port")
flag.IntVar(&port, "p", 9090, "Specify port")
flag.StringVar(&protocol, "P", "binary", "Specify the protocol (binary, compact, simplejson, json)")
flag.StringVar(&urlString, "u", "", "Specify the url")
flag.BoolVar(&framed, "framed", false, "Use framed transport")
flag.BoolVar(&useHttp, "http", false, "Use http")
flag.BoolVar(&help, "help", false, "See usage string")
flag.Parse()
if help || flag.NArg() == 0 {
flag.Usage()
}
if len(urlString) > 0 {
parsedUrl, err := url.Parse(urlString)
if err != nil {
fmt.Fprint(os.Stderr, "Error parsing URL: ", err.Error(), "\n")
flag.Usage()
}
host = parsedUrl.Host
useHttp = len(parsedUrl.Scheme) <= 0 || parsedUrl.Scheme == "http"
} else if useHttp {
_, err := url.Parse(fmt.Sprint("http://", host, ":", port))
if err != nil {
fmt.Fprint(os.Stderr, "Error parsing URL: ", err.Error(), "\n")
flag.Usage()
}
}
cmd := flag.Arg(0)
var err error
if useHttp {
trans, err = thrift.NewTHttpClient(parsedUrl.String())
} else {
addr, err := net.ResolveTCPAddr("tcp", fmt.Sprint(host, ":", port))
if err != nil {
fmt.Fprint(os.Stderr, "Error resolving address", err.Error())
os.Exit(1)
}
trans, err = thrift.NewTNonblockingSocketAddr(addr)
if framed {
trans = thrift.NewTFramedTransport(trans)
}
}
if err != nil {
fmt.Fprint(os.Stderr, "Error creating transport", err.Error())
os.Exit(1)
}
defer trans.Close()
var protocolFactory thrift.TProtocolFactory
switch protocol {
case "compact":
protocolFactory = thrift.NewTCompactProtocolFactory()
break
case "simplejson":
protocolFactory = thrift.NewTSimpleJSONProtocolFactory()
break
case "json":
protocolFactory = thrift.NewTJSONProtocolFactory()
break
case "binary", "":
protocolFactory = thrift.NewTBinaryProtocolFactoryDefault()
break
default:
fmt.Fprint(os.Stderr, "Invalid protocol specified: ", protocol, "\n")
Usage()
os.Exit(1)
}
client := Hbase.NewHbaseClientFactory(trans, protocolFactory)
if err = trans.Open(); err != nil {
fmt.Fprint(os.Stderr, "Error opening socket to ", host, ":", port, " ", err.Error())
os.Exit(1)
}
switch cmd {
case "enableTable":
if flag.NArg()-1 != 1 {
fmt.Fprint(os.Stderr, "EnableTable requires 1 args\n")
flag.Usage()
}
argvalue0 := flag.Arg(1)
value0 := Hbase.Bytes(argvalue0)
fmt.Print(client.EnableTable(value0))
fmt.Print("\n")
break
case "disableTable":
if flag.NArg()-1 != 1 {
fmt.Fprint(os.Stderr, "DisableTable requires 1 args\n")
flag.Usage()
//.........这里部分代码省略.........
示例11: main
func main() {
flag.Usage = Usage
var host string
var port int
var protocol string
var urlString string
var framed bool
var useHttp bool
var help bool
var url http.URL
var trans thrift.TTransport
flag.Usage = Usage
flag.StringVar(&host, "h", "localhost", "Specify host and port")
flag.IntVar(&port, "p", 9090, "Specify port")
flag.StringVar(&protocol, "P", "binary", "Specify the protocol (binary, compact, simplejson, json)")
flag.StringVar(&urlString, "u", "", "Specify the url")
flag.BoolVar(&framed, "framed", false, "Use framed transport")
flag.BoolVar(&useHttp, "http", false, "Use http")
flag.BoolVar(&help, "help", false, "See usage string")
flag.Parse()
if help || flag.NArg() == 0 {
flag.Usage()
}
if len(urlString) > 0 {
url, err := http.ParseURL(urlString)
if err != nil {
fmt.Fprint(os.Stderr, "Error parsing URL: ", err.Error(), "\n")
flag.Usage()
}
host = url.Host
useHttp = len(url.Scheme) <= 0 || url.Scheme == "http"
} else if useHttp {
_, err := http.ParseURL(fmt.Sprint("http://", host, ":", port))
if err != nil {
fmt.Fprint(os.Stderr, "Error parsing URL: ", err.Error(), "\n")
flag.Usage()
}
}
cmd := flag.Arg(0)
var err error
if useHttp {
trans, err = thrift.NewTHttpClient(url.Raw)
} else {
addr, err := net.ResolveTCPAddr("tcp", fmt.Sprint(host, ":", port))
if err != nil {
fmt.Fprint(os.Stderr, "Error resolving address", err.Error())
os.Exit(1)
}
trans, err = thrift.NewTNonblockingSocketAddr(addr)
if framed {
trans = thrift.NewTFramedTransport(trans)
}
}
if err != nil {
fmt.Fprint(os.Stderr, "Error creating transport", err.Error())
os.Exit(1)
}
defer trans.Close()
var protocolFactory thrift.TProtocolFactory
switch protocol {
case "compact":
protocolFactory = thrift.NewTCompactProtocolFactory()
break
case "simplejson":
protocolFactory = thrift.NewTSimpleJSONProtocolFactory()
break
case "json":
protocolFactory = thrift.NewTJSONProtocolFactory()
break
case "binary", "":
protocolFactory = thrift.NewTBinaryProtocolFactoryDefault()
break
default:
fmt.Fprint(os.Stderr, "Invalid protocol specified: ", protocol, "\n")
Usage()
os.Exit(1)
}
client := Hbase.NewHbaseClientFactory(trans, protocolFactory)
if err = trans.Open(); err != nil {
fmt.Fprint(os.Stderr, "Error opening socket to ", host, ":", port, " ", err.Error())
os.Exit(1)
}
switch cmd {
case "enableTable":
if flag.NArg()-1 != 1 {
fmt.Fprint(os.Stderr, "EnableTable requires 1 args\n")
flag.Usage()
}
argvalue0 := flag.Arg(1)
value0 := Hbase.Bytes(argvalue0)
fmt.Print(client.EnableTable(value0))
fmt.Print("\n")
break
case "disableTable":
if flag.NArg()-1 != 1 {
fmt.Fprint(os.Stderr, "DisableTable requires 1 args\n")
flag.Usage()
//.........这里部分代码省略.........
示例12: main
func main() {
flag.Usage = Usage
var host string
var port int
var protocol string
var urlString string
var framed bool
var useHttp bool
var help bool
var url http.URL
var trans thrift.TTransport
flag.Usage = Usage
flag.StringVar(&host, "h", "localhost", "Specify host and port")
flag.IntVar(&port, "p", 9090, "Specify port")
flag.StringVar(&protocol, "P", "binary", "Specify the protocol (binary, compact, simplejson, json)")
flag.StringVar(&urlString, "u", "", "Specify the url")
flag.BoolVar(&framed, "framed", false, "Use framed transport")
flag.BoolVar(&useHttp, "http", false, "Use http")
flag.BoolVar(&help, "help", false, "See usage string")
flag.Parse()
if help || flag.NArg() == 0 {
flag.Usage()
}
if len(urlString) > 0 {
url, err := http.ParseURL(urlString)
if err != nil {
fmt.Fprint(os.Stderr, "Error parsing URL: ", err.Error(), "\n")
flag.Usage()
}
host = url.Host
useHttp = len(url.Scheme) <= 0 || url.Scheme == "http"
} else if useHttp {
_, err := http.ParseURL(fmt.Sprint("http://", host, ":", port))
if err != nil {
fmt.Fprint(os.Stderr, "Error parsing URL: ", err.Error(), "\n")
flag.Usage()
}
}
cmd := flag.Arg(0)
var err error
if useHttp {
trans, err = thrift.NewTHttpClient(url.Raw)
} else {
addr, err := net.ResolveTCPAddr("tcp", fmt.Sprint(host, ":", port))
if err != nil {
fmt.Fprint(os.Stderr, "Error resolving address", err.Error())
os.Exit(1)
}
trans, err = thrift.NewTNonblockingSocketAddr(addr)
if framed {
trans = thrift.NewTFramedTransport(trans)
}
}
if err != nil {
fmt.Fprint(os.Stderr, "Error creating transport", err.Error())
os.Exit(1)
}
defer trans.Close()
var protocolFactory thrift.TProtocolFactory
switch protocol {
case "compact":
protocolFactory = thrift.NewTCompactProtocolFactory()
break
case "simplejson":
protocolFactory = thrift.NewTSimpleJSONProtocolFactory()
break
case "json":
protocolFactory = thrift.NewTJSONProtocolFactory()
break
case "binary", "":
protocolFactory = thrift.NewTBinaryProtocolFactoryDefault()
break
default:
fmt.Fprint(os.Stderr, "Invalid protocol specified: ", protocol, "\n")
Usage()
os.Exit(1)
}
client := fb303.NewFacebookServiceClientFactory(trans, protocolFactory)
if err = trans.Open(); err != nil {
fmt.Fprint(os.Stderr, "Error opening socket to ", host, ":", port, " ", err.Error())
os.Exit(1)
}
switch cmd {
case "getName":
if flag.NArg()-1 != 0 {
fmt.Fprint(os.Stderr, "GetName requires 0 args\n")
flag.Usage()
}
fmt.Print(client.GetName())
fmt.Print("\n")
break
case "getVersion":
if flag.NArg()-1 != 0 {
fmt.Fprint(os.Stderr, "GetVersion requires 0 args\n")
flag.Usage()
}
fmt.Print(client.GetVersion())
//.........这里部分代码省略.........
示例13: main
func main() {
flag.Usage = Usage
var host string
var port int
var protocol string
var urlString string
var framed bool
var useHttp bool
var parsedUrl url.URL
var trans thrift.TTransport
_ = strconv.Atoi
_ = math.Abs
flag.Usage = Usage
flag.StringVar(&host, "h", "localhost", "Specify host and port")
flag.IntVar(&port, "p", 9090, "Specify port")
flag.StringVar(&protocol, "P", "binary", "Specify the protocol (binary, compact, simplejson, json)")
flag.StringVar(&urlString, "u", "", "Specify the url")
flag.BoolVar(&framed, "framed", false, "Use framed transport")
flag.BoolVar(&useHttp, "http", false, "Use http")
flag.Parse()
if len(urlString) > 0 {
parsedUrl, err := url.Parse(urlString)
if err != nil {
fmt.Fprintln(os.Stderr, "Error parsing URL: ", err)
flag.Usage()
}
host = parsedUrl.Host
useHttp = len(parsedUrl.Scheme) <= 0 || parsedUrl.Scheme == "http"
} else if useHttp {
_, err := url.Parse(fmt.Sprint("http://", host, ":", port))
if err != nil {
fmt.Fprintln(os.Stderr, "Error parsing URL: ", err)
flag.Usage()
}
}
cmd := flag.Arg(0)
var err error
if useHttp {
trans, err = thrift.NewTHttpClient(parsedUrl.String())
} else {
portStr := fmt.Sprint(port)
if strings.Contains(host, ":") {
host, portStr, err = net.SplitHostPort(host)
if err != nil {
fmt.Fprintln(os.Stderr, "error with host:", err)
os.Exit(1)
}
}
trans, err = thrift.NewTSocket(net.JoinHostPort(host, portStr))
if err != nil {
fmt.Fprintln(os.Stderr, "error resolving address:", err)
os.Exit(1)
}
if framed {
trans = thrift.NewTFramedTransport(trans)
}
}
if err != nil {
fmt.Fprintln(os.Stderr, "Error creating transport", err)
os.Exit(1)
}
defer trans.Close()
var protocolFactory thrift.TProtocolFactory
switch protocol {
case "compact":
protocolFactory = thrift.NewTCompactProtocolFactory()
break
case "simplejson":
protocolFactory = thrift.NewTSimpleJSONProtocolFactory()
break
case "json":
protocolFactory = thrift.NewTJSONProtocolFactory()
break
case "binary", "":
protocolFactory = thrift.NewTBinaryProtocolFactoryDefault()
break
default:
fmt.Fprintln(os.Stderr, "Invalid protocol specified: ", protocol)
Usage()
os.Exit(1)
}
client := stress.NewServiceClientFactory(trans, protocolFactory)
if err := trans.Open(); err != nil {
fmt.Fprintln(os.Stderr, "Error opening socket to ", host, ":", port, " ", err)
os.Exit(1)
}
switch cmd {
case "echoVoid":
if flag.NArg()-1 != 0 {
fmt.Fprintln(os.Stderr, "EchoVoid requires 0 args")
flag.Usage()
}
fmt.Print(client.EchoVoid())
fmt.Print("\n")
break
case "echoByte":
if flag.NArg()-1 != 1 {
//.........这里部分代码省略.........
示例14: main
func main() {
flag.Usage = Usage
var host string
var port int
var protocol string
var urlString string
var framed bool
var useHttp bool
var help bool
var parsedUrl url.URL
var trans thrift.TTransport
flag.Usage = Usage
flag.StringVar(&host, "h", "localhost", "Specify host and port")
flag.IntVar(&port, "p", 9090, "Specify port")
flag.StringVar(&protocol, "P", "binary", "Specify the protocol (binary, compact, simplejson, json)")
flag.StringVar(&urlString, "u", "", "Specify the url")
flag.BoolVar(&framed, "framed", false, "Use framed transport")
flag.BoolVar(&useHttp, "http", false, "Use http")
flag.BoolVar(&help, "help", false, "See usage string")
flag.Parse()
if help || flag.NArg() == 0 {
flag.Usage()
}
if len(urlString) > 0 {
parsedUrl, err := url.Parse(urlString)
if err != nil {
fmt.Fprint(os.Stderr, "Error parsing URL: ", err.Error(), "\n")
flag.Usage()
}
host = parsedUrl.Host
useHttp = len(parsedUrl.Scheme) <= 0 || parsedUrl.Scheme == "http"
} else if useHttp {
_, err := url.Parse(fmt.Sprint("http://", host, ":", port))
if err != nil {
fmt.Fprint(os.Stderr, "Error parsing URL: ", err.Error(), "\n")
flag.Usage()
}
}
cmd := flag.Arg(0)
var err error
if useHttp {
trans, err = thrift.NewTHttpClient(parsedUrl.String())
} else {
addr, err := net.ResolveTCPAddr("tcp", fmt.Sprint(host, ":", port))
if err != nil {
fmt.Fprint(os.Stderr, "Error resolving address", err.Error())
os.Exit(1)
}
trans, err = thrift.NewTNonblockingSocketAddr(addr)
if framed {
trans = thrift.NewTFramedTransport(trans)
}
}
if err != nil {
fmt.Fprint(os.Stderr, "Error creating transport", err.Error())
os.Exit(1)
}
defer trans.Close()
var protocolFactory thrift.TProtocolFactory
switch protocol {
case "compact":
protocolFactory = thrift.NewTCompactProtocolFactory()
break
case "simplejson":
protocolFactory = thrift.NewTSimpleJSONProtocolFactory()
break
case "json":
protocolFactory = thrift.NewTJSONProtocolFactory()
break
case "binary", "":
protocolFactory = thrift.NewTBinaryProtocolFactoryDefault()
break
default:
fmt.Fprint(os.Stderr, "Invalid protocol specified: ", protocol, "\n")
Usage()
os.Exit(1)
}
client := librarytest.NewReverseOrderServiceClientFactory(trans, protocolFactory)
if err = trans.Open(); err != nil {
fmt.Fprint(os.Stderr, "Error opening socket to ", host, ":", port, " ", err.Error())
os.Exit(1)
}
switch cmd {
case "myMethod":
if flag.NArg()-1 != 4 {
fmt.Fprint(os.Stderr, "MyMethod requires 4 args\n")
flag.Usage()
}
argvalue0 := flag.Arg(1)
value0 := argvalue0
tmp1, err1129 := (strconv.Atoi(flag.Arg(2)))
if err1129 != nil {
Usage()
return
}
argvalue1 := byte(tmp1)
value1 := argvalue1
//.........这里部分代码省略.........