def get_client(self, name=None, agent=None):
        """See :func:`burpui.misc.backend.interface.BUIbackend.get_client`"""
        ret = []
        if not name:
            return ret
        query = self.status('c:{0}\n'.format(name))
        if not query:
            return ret
        try:
            backups = query['clients'][0]['backups']
        except KeyError as e:
            self._logger('warning', 'Client not found')
            return ret
        for backup in backups:
            back = {}
            # skip running backups since data will be inconsistent
            if 'flags' in backup and 'working' in backup['flags']:
                continue
            back['number'] = backup['number']
            if 'flags' in backup and 'deletable' in backup['flags']:
                back['deletable'] = True
            else:
                back['deletable'] = False
            back['date'] = backup['timestamp']
            log = self.get_backup_logs(backup['number'], name)
            try:
                back['encrypted'] = log['encrypted']
                try:
                    back['received'] = log['received']
                except KeyError as e:
                    back['received'] = 0
                try:
                    back['size'] = log['totsize']
                except KeyError as e:
                    back['size'] = 0
                back['end'] = log['end']
                # override date since the timestamp is odd
                back['date'] = log['start']
                ret.append(back)
            except Exception as e:
                self._logger('warning', 'Unable to parse logs')
                pass

        # Here we need to reverse the array so the backups are sorted by date ASC
        ret.reverse()
        return ret
dataset/ETHPy150Open ziirish/burp-ui/burpui/misc/backend/burp2.py/Burp.get_client/original