Esempio n. 1
0
    def run_it(self):
        ds_name = os.path.splitext(os.path.basename(self.ds.ffile.name))[0]
        self.ds = self.grab_item(models.DataSet, self.ds.pk,'parsing imgs from %s' % ds_name)
        if not self.ds:
            return True # all got taken by somebody else

        if self.ds.status == models.DS_RECHECK:
            self.recheck_dataset(ds_name)
        elif self.ds.tar_dir:
            # already in progress, continue to work on it
            self.process_tar_snippets()
        else:
            self.log('Reading dataset %s' % ds_name, 3)
            stats, created = Statistics.objects.get_or_create(ds=self.ds)
            if not created:
                stats.delete()
                stats = Statistics(ds=self.ds)
            stats.set_name = ds_name
            stats.save()
            self.process_dataset()
        self.release_item(models.DataSet, self.ds.pk)
        return True