FacebookService-remote 3.9 KB

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