예제 #1
0
def run_admin_command(options):
   """
   Monitor a Crossbar.io server.
   """
   from choosereactor import install_reactor
   reactor = install_reactor(options.reactor, options.verbose)

   factory = CrossbarCLIFactory(options, reactor)
   connectWS(factory)
   reactor.run()
예제 #2
0
파일: cli.py 프로젝트: ktosiu/scratchbox
def run_admin_command(options):
    """
   Monitor a Crossbar.io server.
   """
    from choosereactor import install_reactor
    reactor = install_reactor(options.reactor, options.verbose)

    factory = CrossbarCLIFactory(options, reactor)
    connectWS(factory)
    reactor.run()
예제 #3
0
def run_command_start(options):
   """
   Start Crossbar.io server.
   """
   from choosereactor import install_reactor
   reactor = install_reactor(options.reactor, options.verbose)

   import twisted
   from crossbar import logger

   if False:
      twisted.python.log.startLogging(sys.stdout)
   else:
      flo = logger.LevelFileLogObserver(sys.stdout, level = logging.DEBUG)
      twisted.python.log.startLoggingWithObserver(flo.emit)

   from crossbar.servicefactory import makeService

   svc = makeService(vars(options))
   svc.startService()

   installSignalHandlers = True
   reactor.run(installSignalHandlers)
예제 #4
0
파일: cli.py 프로젝트: ktosiu/scratchbox
def run_command_start(options):
    """
   Start Crossbar.io server.
   """
    from choosereactor import install_reactor
    reactor = install_reactor(options.reactor, options.verbose)

    import twisted
    from crossbar import logger

    if False:
        twisted.python.log.startLogging(sys.stdout)
    else:
        flo = logger.LevelFileLogObserver(sys.stdout, level=logging.DEBUG)
        twisted.python.log.startLoggingWithObserver(flo.emit)

    from crossbar.servicefactory import makeService

    svc = makeService(vars(options))
    svc.startService()

    installSignalHandlers = True
    reactor.run(installSignalHandlers)
예제 #5
0
def run_command_version(options):
   """
   Print local Crossbar.io software component types and versions.
   """
   from choosereactor import install_reactor
   reactor = install_reactor(options.reactor, options.verbose)

   from twisted.python.reflect import qual

   ## Python
   ##
   py_ver = '.'.join([str(x) for x in list(sys.version_info[:3])])
   if options.verbose:
      py_ver += " [%s]" % sys.version.replace('\n', ' ')

   ## Twisted / Reactor
   ##
   tx_ver = "%s-%s" % (pkg_resources.require("Twisted")[0].version, reactor.__class__.__name__)
   if options.verbose:
      tx_ver += " [%s]" % qual(reactor.__class__)

   ## Autobahn
   ##
   import autobahn
   from autobahn.websocket import WebSocketProtocol
   ab_ver = pkg_resources.require("autobahn")[0].version
   if options.verbose:
      ab_ver += " [%s]" % qual(WebSocketProtocol)

   ## UTF8 Validator
   ##
   from autobahn.utf8validator import Utf8Validator
   s = str(Utf8Validator)
   if 'wsaccel' in s:
      utf8_ver = 'wsaccel-%s' % pkg_resources.require('wsaccel')[0].version
   elif s.startswith('autobahn'):
      utf8_ver = 'autobahn'
   else:
      raise Exception("could not detect UTF8 validator type/version")
   if options.verbose:
      utf8_ver += " [%s]" % qual(Utf8Validator)

   ## XOR Masker
   ##
   from autobahn.xormasker import XorMaskerNull
   s = str(XorMaskerNull)
   if 'wsaccel' in s:
      xor_ver = 'wsaccel-%s' % pkg_resources.require('wsaccel')[0].version
   elif s.startswith('autobahn'):
      xor_ver = 'autobahn'
   else:
      raise Exception("could not detect XOR masker type/version")
   if options.verbose:
      xor_ver += " [%s]" % qual(XorMaskerNull)

   ## JSON Processor
   ##
   s = str(autobahn.wamp.json_lib.__name__)
   if 'ujson' in s:
      json_ver = 'ujson-%s' % pkg_resources.require('ujson')[0].version
      import ujson
      if options.verbose:
         json_ver += " [%s]" % qual(ujson.dumps)
   elif s.startswith('json'):
      json_ver = 'python'
   else:
      raise Exception("could not detect JSON processor type/version")
   
   print
   print "Crossbar.io local component versions:"
   print
   print "Python          : %s" % py_ver
   print "Twisted         : %s" % tx_ver
   print "Autobahn        : %s" % ab_ver
   print "UTF8 Validator  : %s" % utf8_ver
   print "XOR Masker      : %s" % xor_ver
   print "JSON Processor  : %s" % json_ver
   print
예제 #6
0
파일: cli.py 프로젝트: ktosiu/scratchbox
def run_command_version(options):
    """
   Print local Crossbar.io software component types and versions.
   """
    from choosereactor import install_reactor
    reactor = install_reactor(options.reactor, options.verbose)

    from twisted.python.reflect import qual

    ## Python
    ##
    py_ver = '.'.join([str(x) for x in list(sys.version_info[:3])])
    if options.verbose:
        py_ver += " [%s]" % sys.version.replace('\n', ' ')

    ## Twisted / Reactor
    ##
    tx_ver = "%s-%s" % (pkg_resources.require("Twisted")[0].version,
                        reactor.__class__.__name__)
    if options.verbose:
        tx_ver += " [%s]" % qual(reactor.__class__)

    ## Autobahn
    ##
    import autobahn
    from autobahn.websocket import WebSocketProtocol
    ab_ver = pkg_resources.require("autobahn")[0].version
    if options.verbose:
        ab_ver += " [%s]" % qual(WebSocketProtocol)

    ## UTF8 Validator
    ##
    from autobahn.utf8validator import Utf8Validator
    s = str(Utf8Validator)
    if 'wsaccel' in s:
        utf8_ver = 'wsaccel-%s' % pkg_resources.require('wsaccel')[0].version
    elif s.startswith('autobahn'):
        utf8_ver = 'autobahn'
    else:
        raise Exception("could not detect UTF8 validator type/version")
    if options.verbose:
        utf8_ver += " [%s]" % qual(Utf8Validator)

    ## XOR Masker
    ##
    from autobahn.xormasker import XorMaskerNull
    s = str(XorMaskerNull)
    if 'wsaccel' in s:
        xor_ver = 'wsaccel-%s' % pkg_resources.require('wsaccel')[0].version
    elif s.startswith('autobahn'):
        xor_ver = 'autobahn'
    else:
        raise Exception("could not detect XOR masker type/version")
    if options.verbose:
        xor_ver += " [%s]" % qual(XorMaskerNull)

    ## JSON Processor
    ##
    s = str(autobahn.wamp.json_lib.__name__)
    if 'ujson' in s:
        json_ver = 'ujson-%s' % pkg_resources.require('ujson')[0].version
        import ujson
        if options.verbose:
            json_ver += " [%s]" % qual(ujson.dumps)
    elif s.startswith('json'):
        json_ver = 'python'
    else:
        raise Exception("could not detect JSON processor type/version")

    print
    print "Crossbar.io local component versions:"
    print
    print "Python          : %s" % py_ver
    print "Twisted         : %s" % tx_ver
    print "Autobahn        : %s" % ab_ver
    print "UTF8 Validator  : %s" % utf8_ver
    print "XOR Masker      : %s" % xor_ver
    print "JSON Processor  : %s" % json_ver
    print