示例#1
0
 def _init_xrc_server(self):
   host = None
   ports = None
   if self._cfg.has_key('xrs-address'):
     (host, port) = (self._cfg['xrs-address'][0], self._cfg['xrs-address'][1])
     ports = (port,)
   elif self._cfg.has_key('xrs-port-range'):
     host = ''
     ports = self._cfg['xrs-port-range']
   
   if host != None:  
     if self.__xrtype == 'threaded':
       self._xrc = hodXMLRPCServer(host, ports)
     elif self.__xrtype == 'twisted':
       try:
         from socketServers import twistedXMLRPCServer
         self._xrc = twistedXMLRPCServer(host, ports, self.logs['main'])
       except ImportError:
         self.logs['main'].error("Twisted XML-RPC server not available, "
                                 + "falling back on threaded server.")
         self._xrc = hodXMLRPCServer(host, ports)
     for attr in dir(self):
       if attr.startswith('_xr_method_'):
         self._xrc.register_function(getattr(self, attr),
                                     attr[11:])
   
     self._xrc.register_introspection_functions()
示例#2
0
    def _init_xrc_server(self):
        host = None
        ports = None
        if self._cfg.has_key('xrs-address'):
            (host, port) = (self._cfg['xrs-address'][0],
                            self._cfg['xrs-address'][1])
            ports = (port, )
        elif self._cfg.has_key('xrs-port-range'):
            host = ''
            ports = self._cfg['xrs-port-range']

        if host != None:
            if self.__xrtype == 'threaded':
                self._xrc = hodXMLRPCServer(host, ports)
            elif self.__xrtype == 'twisted':
                try:
                    from socketServers import twistedXMLRPCServer
                    self._xrc = twistedXMLRPCServer(host, ports,
                                                    self.logs['main'])
                except ImportError:
                    self.logs['main'].error(
                        "Twisted XML-RPC server not available, " +
                        "falling back on threaded server.")
                    self._xrc = hodXMLRPCServer(host, ports)
            for attr in dir(self):
                if attr.startswith('_xr_method_'):
                    self._xrc.register_function(getattr(self, attr), attr[11:])

            self._xrc.register_introspection_functions()
示例#3
0
  def __init__(self):
    # suite setup
    BaseTestSuite.__init__(self, __name__, excludes)

    def rpcCall():
      return True
    
    global serverPort
    serverPort = ServiceUtil.getUniqRandomPort(h='localhost',low=40000,high=50000)
    self.server = hodXMLRPCServer('localhost', [serverPort])
    self.server.register_function(rpcCall, 'testing')
    self.thread = threading.Thread(name="server", 
                                   target=self.server._serve_forever)
    self.thread.start()
    time.sleep(1) # give some time to start server
示例#4
0
    def __init__(self, cfg, log, logMasterSources, retry=5):
        try:
            from hodlib.Common.socketServers import twistedXMLRPCServer

            ringMasterServer.xmlrpc = twistedXMLRPCServer("", cfg["ringmaster"]["xrs-port-range"])
        except ImportError:
            log.info("Twisted interface not found. Using hodXMLRPCServer.")
            ringMasterServer.xmlrpc = hodXMLRPCServer("", cfg["ringmaster"]["xrs-port-range"])

        ringMasterServer.xmlrpc.register_instance(logMasterSources)
        self.logMasterSources = logMasterSources
        ringMasterServer.xmlrpc.serve_forever()

        while not ringMasterServer.xmlrpc.is_alive():
            time.sleep(0.5)

        log.debug("Ringmaster RPC Server at %d" % ringMasterServer.xmlrpc.server_address[1])
示例#5
0
    def __init__(self):
        # suite setup
        BaseTestSuite.__init__(self, __name__, excludes)

        def rpcCall():
            return True

        global serverPort
        serverPort = ServiceUtil.getUniqRandomPort(h='localhost',
                                                   low=40000,
                                                   high=50000)
        self.server = hodXMLRPCServer('localhost', [serverPort])
        self.server.register_function(rpcCall, 'testing')
        self.thread = threading.Thread(name="server",
                                       target=self.server._serve_forever)
        self.thread.start()
        time.sleep(1)  # give some time to start server
示例#6
0
    def __init__(self, cfg, log, logMasterSources, retry=5):
        try:
            from hodlib.Common.socketServers import twistedXMLRPCServer
            ringMasterServer.xmlrpc = twistedXMLRPCServer(
                "", cfg['ringmaster']['xrs-port-range'])
        except ImportError:
            log.info("Twisted interface not found. Using hodXMLRPCServer.")
            ringMasterServer.xmlrpc = hodXMLRPCServer(
                "", cfg['ringmaster']['xrs-port-range'])

        ringMasterServer.xmlrpc.register_instance(logMasterSources)
        self.logMasterSources = logMasterSources
        ringMasterServer.xmlrpc.serve_forever()

        while not ringMasterServer.xmlrpc.is_alive():
            time.sleep(.5)

        log.debug('Ringmaster RPC Server at %d' %
                  ringMasterServer.xmlrpc.server_address[1])