Exemplo n.º 1
0
    def __init__(self, name, *p, **k):

        # base
        BasicModule.__init__(self, name, *p, **k)

        # interval
        self.interval = int(Config().getExt(name, 'interval').strip())

        # restart
        self.restart = 'false'
        if isTrue(Config().getExt(name, 'restart').strip()):
            self.restart = 'true'

        # invocation-count
        self.runCount = 0
Exemplo n.º 2
0
    def startModule(self, requestHandler, name = None):
        try:

            # start all modules
            if name is None:
                self.logger.info('Starting all Modules...')
                names = Config().get('modules', 'Modules').strip().split(',')
                for name in names:
                    name = name.strip()
                    if isTrue(Config().getExt(name, 'enabled').strip()):
                        try:
                            # check if exists
                            if ModuleManager.Modules.has_key(name):
                                raise Exception, "Module does already exist: %s" % (name)
                            # start
                            ModuleManager.Modules[name] = getClassByName(Config().get(name, 'module').strip(), Config().get(name, 'class').strip())(name)
                            ModuleManager.Modules[name].start(requestHandler, self.onModuleStop)
                        except Exception, e:
                            self.logger.error("failed to start Module %s (%s)" % (name, e))

            # start single module
            else:
Exemplo n.º 3
0
    def startServer(self, requestHandler, name = None):
        try:

            # start all servers
            if name is None:
                self.logger.info('Starting all Servers...')
                serverNames = Config().get('server', 'Servers').strip().split(',')
                for name in serverNames:
                    name = name.strip()
                    if isTrue(Config().getExt(name, 'enabled').strip()):
                        try:
                            # check if exists
                            if ServerManager.Servers.has_key(name):
                                raise Exception, "Server does already exist: %s" % (name)
                            # start
                            ServerManager.Servers[name] = getClassByName(Config().get(name, 'module').strip(), Config().get(name, 'class').strip())(name)
                            ServerManager.Servers[name].start(requestHandler, self.onServerStop)
                        except Exception, e:
                            self.logger.error("failed to start Server %s (%s)" % (name, e))

            # start single server
            else:
Exemplo n.º 4
0
    def command(self, cmd):

        # log
        self.logger.debug('command: %s' % cmd)

        # stop
        if cmd == 'stop':
            if self.running:
                self.running = False
                return 'initialize Module-shutdown...'
            else:
                return 'Module not running'

        # invoke
        elif cmd == 'invoke':
            return self.invoke()

        # reloadConfig   
        elif cmd.startswith('reloadConfig'):

            # interval
            self.interval = int(Config().getExt(self.name, 'interval').strip())

            # restart
            self.restart = 'false'
            if isTrue(Config().getExt(self.name, 'restart').strip()):
                self.restart = 'true'

            # message
            msg = 'Config reloaded (interval: %d; restart: %s)' % (self.interval, self.restart)

            # info
            self.logger.info(msg)

            # return
            return msg

        # unknown
        return 'Command unknown: %s' % cmd
Exemplo n.º 5
0
                    name = name.strip()
                    if isTrue(Config().getExt(name, 'enabled').strip()):
                        try:
                            # check if exists
                            if ModuleManager.Modules.has_key(name):
                                raise Exception, "Module does already exist: %s" % (name)
                            # start
                            ModuleManager.Modules[name] = getClassByName(Config().get(name, 'module').strip(), Config().get(name, 'class').strip())(name)
                            ModuleManager.Modules[name].start(requestHandler, self.onModuleStop)
                        except Exception, e:
                            self.logger.error("failed to start Module %s (%s)" % (name, e))

            # start single module
            else:
                self.logger.info('Starting Module %s...' % name)
                if isTrue(Config().getExt(name, 'enabled').strip()):
                    try:
                        # check if exists
                        if ModuleManager.Modules.has_key(name):
                            raise Exception, "Module does already exist: %s" % (name)
                        # start
                        ModuleManager.Modules[name] = getClassByName(Config().get(name, 'module').strip(), Config().get(name, 'class').strip())(name)
                        ModuleManager.Modules[name].start(requestHandler, self.onModuleStop)
                    except Exception, e:
                        self.logger.error("failed to start Module %s (%s)" % (name, e))

        except Exception, e:
            self.logger.error("Exception in startModule (%s)" % (e))
            raise e

    """ -------------------------------------------------------------------- """