Example #1
0
    def __init__(self, **kwargs):
        super(Task, self).__init__(**kwargs)

        self.id = utils.intval(kwargs.get('id'))

        self.type = kwargs['type']
        if isinstance(self.type, (int, long)):
            self.type = enums.Task.Type.find(self.type)

        self.type_id = kwargs.get('type_id', 0)

        self.time_created = kwargs.get('time_created', int(utils.timestamp()))
        self.time_created_text = utils.timestamp2datefmt(self.time_created)
        self.active_time = kwargs.get('active_time', self.time_created)
        self.active_time_text = utils.timestamp2datefmt(self.active_time)
        self.last_time = kwargs.get('last_time', 0)

        self.tail_num = kwargs.get(
            'tail_num', utils.make_tail_num(utils.randint(0, 999999999)))
        # 状态
        self.status = kwargs.get('status', enums.Task.Status.Waiting)
        if isinstance(self.status, (int, long)):
            self.status = enums.Task.Status.find(self.status)
        self.statsu_text = kwargs.get('status_text')

        self.exec_times = utils.intval(kwargs.get('exec_times', 0))

        self.content = kwargs.get('content', {})
        if self.content and isinstance(self.content, (str, unicode)):
            self.content = utils.json_loads(self.content)

        # 任务的处理程序,默认为None
        self._handler = None
        # 是否被执行过
        self._executed = False
Example #2
0
    def get_raw_info(video_id):
        """
        获取视频原始信息中的 info 字段
        :param video_id:
        :return:
        """
        rs = db.manager.slave_media.select('video_raw', what = 'info', where = 'video_id = $video_id', vars = locals())
        if rs:
            return utils.json_loads(rs[0].info)

        return None
Example #3
0
    def GET(self):
        inp = utils.Input()
        task_id = inp.int('task_id')

        if task_id <= 0:
            return messages.ArgumentInvalid

        tk = task.TaskDAL.load(task_id)
        if tk is None:
            return messages.NotFound

        # 读取最近5次的执行日志
        logs = task.TaskDAL.get_last_logs(task_id, 5)
        if logs:
            tk.logs = []
            for log in logs:
                log.status = enums.Task.Status.find(log.status)
                log.status_text = utils.json_loads(log.status_text)
                log.status_time = utils.timestamp2date(log.status_time)
                tk.logs.append(log)

        return 0, 'success', tk
Example #4
0
 def get_json(self, name):
     return utils.json_loads(self.client.get(name))
Example #5
0
 def get_json(self, name):
     data = self.get(name)
     return utils.json_loads(data) if data else None