コード例 #1
0
 def partition(self, key, partitions=None):
     # Refresh the partition list if necessary
     if partitions and self.partitions != partitions:
         self._set_partitions(partitions)
     logger.debug('key {}'.format(key))
     user = monkapi.load_user(key)
     if not user:
         return self.iterpart.next()
     else:
         return user.partition
コード例 #2
0
 def partition(self, key, partitions=None):
      # Refresh the partition list if necessary
     if partitions and self.partitions != partitions:
         self._set_partitions(partitions)
     logger.debug('key {}'.format(key))
     user = monkapi.load_user(key)
     if not user:
         return self.iterpart.next()
     else:
         return user.partition
コード例 #3
0
 def act(self):
     activeEngines = filter(lambda engine: engine.is_active(), admin.workers.itervalues())
     def extend(x,y):
         x.extend(y.users)
         y.users = []
         return x
     activeUsers = reduce(extend, activeEngines, [])
     iterEngine = cycle(activeEngines)
     for userName in activeUsers:
         engine = iterEngine.next()
         user = monkapi.load_user(userName)
         user.partition = engine.partition
         user.save()
         engine.add_user(userName)
コード例 #4
0
    def act(self):
        activeEngines = filter(lambda engine: engine.is_active(),
                               admin.workers.itervalues())

        def extend(x, y):
            x.extend(y.users)
            y.users = []
            return x

        activeUsers = reduce(extend, activeEngines, [])
        iterEngine = cycle(activeEngines)
        for userName in activeUsers:
            engine = iterEngine.next()
            user = monkapi.load_user(userName)
            user.partition = engine.partition
            user.save()
            engine.add_user(userName)
コード例 #5
0
 def act(self):
     userName = self.get(User.NAME, '')
     if not userName:
         logger.error('empty user name {}'.format(self.decodedMessage))
         return
     user = monkapi.load_user(userName)
     if not user:
         logger.error('user is not registered {}'.format(self.decodedMessage))
         return
     user._setattr(User.FFNAME,    self.get(User.FFNAME))
     user._setattr(User.FGENDER,   self.get(User.FGENDER))
     user._setattr(User.FLNAME,    self.get(User.FLNAME))
     user._setattr(User.FMName,    self.get(User.FMName))
     user._setattr(User.FPASSWORD, self.get(User.FPASSWORD))
     user._setattr(User.FPART,     self.get(User.FPART))
     user._setattr(User.FYEAR,     self.get(User.FYEAR), lambda x: int(x))
     user.save()
     logger.debug('{} updated'.format(user.generic()))
コード例 #6
0
 def act(self):
     userName = self.get(User.NAME, '')
     if not userName:
         logger.error('empty user name {}'.format(self.decodedMessage))
         return
     user = monkapi.load_user(userName)
     if not user:
         logger.error('user is not registered {}'.format(
             self.decodedMessage))
         return
     user._setattr(User.FFNAME, self.get(User.FFNAME))
     user._setattr(User.FGENDER, self.get(User.FGENDER))
     user._setattr(User.FLNAME, self.get(User.FLNAME))
     user._setattr(User.FMName, self.get(User.FMName))
     user._setattr(User.FPASSWORD, self.get(User.FPASSWORD))
     user._setattr(User.FPART, self.get(User.FPART))
     user._setattr(User.FYEAR, self.get(User.FYEAR), lambda x: int(x))
     user.save()
     logger.debug('{} updated'.format(user.generic()))
コード例 #7
0
 def act(self):
     userName = self.get(User.NAME,'')
     if not userName:
         logger.error('empty user name {}'.format(self.decodedMessage))
         return
     user = monkapi.load_user(userName)
     if not user:
         leastLoadedEngine = self.get_least_loaded_engine()
         if leastLoadedEngine is None:
             logger.debug('no engine is active')
             return
         userScript = {User.NAME      : userName,\
                       User.CREATOR   : cons.DEFAULT_CREATOR,\
                       User.FPART     : leastLoadedEngine.partition,\
                       User.FFNAME    : self.get(User.FFNAME),\
                       User.FGENDER   : self.get(User.FGENDER),\
                       User.FLNAME    : self.get(User.FLNAME),\
                       User.FMName    : self.get(User.FMName),\
                       User.FPASSWORD : self.get(User.FPASSWORD),\
                       User.FYEAR     : int(self.get(User.FYEAR, '1900'))}
         user = monkapi.create_user(userScript)
         leastLoadedEngine.add_user(userName)
         logger.debug('{} add user {}'.format(leastLoadedEngine.name, leastLoadedEngine.users))
コード例 #8
0
 def act(self):
     userName = self.get(User.NAME, '')
     if not userName:
         logger.error('empty user name {}'.format(self.decodedMessage))
         return
     user = monkapi.load_user(userName)
     if not user:
         leastLoadedEngine = self.get_least_loaded_engine()
         if leastLoadedEngine is None:
             logger.debug('no engine is active')
             return
         userScript = {User.NAME      : userName,\
                       User.CREATOR   : cons.DEFAULT_CREATOR,\
                       User.FPART     : leastLoadedEngine.partition,\
                       User.FFNAME    : self.get(User.FFNAME),\
                       User.FGENDER   : self.get(User.FGENDER),\
                       User.FLNAME    : self.get(User.FLNAME),\
                       User.FMName    : self.get(User.FMName),\
                       User.FPASSWORD : self.get(User.FPASSWORD),\
                       User.FYEAR     : int(self.get(User.FYEAR, '1900'))}
         user = monkapi.create_user(userScript)
         leastLoadedEngine.add_user(userName)
         logger.debug('{} add user {}'.format(leastLoadedEngine.name,
                                              leastLoadedEngine.users))