blob: af985be3c34adb9a361825522274a0f64498358b [file] [log] [blame]
pwyckoff99b000b2008-04-03 19:30:55 +00001#!/usr/bin/env python
2#
3# Autogenerated by Thrift
4#
5# DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
6#
7
8import sys
9import pprint
10from urlparse import urlparse
11from thrift.transport import TTransport
12from thrift.transport import TSocket
13from thrift.transport import THttpClient
14from thrift.protocol import TBinaryProtocol
15
16import FacebookService
17from ttypes import *
18
19if len(sys.argv) <= 1 or sys.argv[1] == '--help':
20 print ''
21 print 'Usage: ' + sys.argv[0] + ' [-h host:port] [-u url] [-f[ramed]] function [arg1 [arg2...]]'
22 print ''
23 print 'Functions:'
24 print ' string getName()'
25 print ' string getVersion()'
26 print ' fb_status getStatus()'
27 print ' string getStatusDetails()'
28 print ' getCounters()'
29 print ' i64 getCounter(string key)'
30 print ' void setOption(string key, string value)'
31 print ' string getOption(string key)'
32 print ' getOptions()'
33 print ' i64 aliveSince()'
34 print ' Service getLimitedReflection()'
35 print ' void reinitialize()'
36 print ' void shutdown()'
37 print ''
38 sys.exit(0)
39
40pp = pprint.PrettyPrinter(indent = 2)
41host = 'localhost'
42port = 9090
43uri = ''
44framed = False
45http = False
46argi = 1
47
48if sys.argv[argi] == '-h':
49 parts = sys.argv[argi+1].split(':')
50 host = parts[0]
51 port = int(parts[1])
52 argi += 2
53
54if sys.argv[argi] == '-u':
55 url = urlparse(sys.argv[argi+1])
56 parts = url[1].split(':')
57 host = parts[0]
58 if len(parts) > 1:
59 port = int(parts[1])
60 else:
61 port = 80
62 uri = url[2]
63 http = True
64 argi += 2
65
66if sys.argv[argi] == '-f' or sys.argv[argi] == '-framed':
67 framed = True
68 argi += 1
69
70cmd = sys.argv[argi]
71args = sys.argv[argi+1:]
72
73if http:
74 transport = THttpClient.THttpClient(host, port, uri)
75else:
76 socket = TSocket.TSocket(host, port)
77 if framed:
78 transport = TTransport.TFramedTransport(socket)
79 else:
80 transport = TTransport.TBufferedTransport(socket)
81protocol = TBinaryProtocol.TBinaryProtocol(transport)
82client = FacebookService.Client(protocol)
83transport.open()
84
85if cmd == 'getName':
86 if len(args) != 0:
87 print 'getName requires 0 args'
88 sys.exit(1)
89 pp.pprint(client.getName())
90
91elif cmd == 'getVersion':
92 if len(args) != 0:
93 print 'getVersion requires 0 args'
94 sys.exit(1)
95 pp.pprint(client.getVersion())
96
97elif cmd == 'getStatus':
98 if len(args) != 0:
99 print 'getStatus requires 0 args'
100 sys.exit(1)
101 pp.pprint(client.getStatus())
102
103elif cmd == 'getStatusDetails':
104 if len(args) != 0:
105 print 'getStatusDetails requires 0 args'
106 sys.exit(1)
107 pp.pprint(client.getStatusDetails())
108
109elif cmd == 'getCounters':
110 if len(args) != 0:
111 print 'getCounters requires 0 args'
112 sys.exit(1)
113 pp.pprint(client.getCounters())
114
115elif cmd == 'getCounter':
116 if len(args) != 1:
117 print 'getCounter requires 1 args'
118 sys.exit(1)
119 pp.pprint(client.getCounter(args[0],))
120
121elif cmd == 'setOption':
122 if len(args) != 2:
123 print 'setOption requires 2 args'
124 sys.exit(1)
125 pp.pprint(client.setOption(args[0],args[1],))
126
127elif cmd == 'getOption':
128 if len(args) != 1:
129 print 'getOption requires 1 args'
130 sys.exit(1)
131 pp.pprint(client.getOption(args[0],))
132
133elif cmd == 'getOptions':
134 if len(args) != 0:
135 print 'getOptions requires 0 args'
136 sys.exit(1)
137 pp.pprint(client.getOptions())
138
139elif cmd == 'aliveSince':
140 if len(args) != 0:
141 print 'aliveSince requires 0 args'
142 sys.exit(1)
143 pp.pprint(client.aliveSince())
144
145elif cmd == 'getLimitedReflection':
146 if len(args) != 0:
147 print 'getLimitedReflection requires 0 args'
148 sys.exit(1)
149 pp.pprint(client.getLimitedReflection())
150
151elif cmd == 'reinitialize':
152 if len(args) != 0:
153 print 'reinitialize requires 0 args'
154 sys.exit(1)
155 pp.pprint(client.reinitialize())
156
157elif cmd == 'shutdown':
158 if len(args) != 0:
159 print 'shutdown requires 0 args'
160 sys.exit(1)
161 pp.pprint(client.shutdown())
162
163transport.close()