Пример #1
0
def createExport(self, export_id):
    instance = MolSetExport.objects.get(pk=export_id)
    exporter_class, exporter_module = getObjectAndModuleFromFullName(
        instance.exporter.classPath)
    exporter = exporter_class(instance, ProgressRecorder(self))
    file = exporter.saveFile()
    return {
        "file": file.file.name,
        "errors": [repr(x) for x in exporter.errors]
    }
Пример #2
0
def createMap(self, model_id, builder_class):
    instance = Map.objects.get(pk=model_id)
    builder_class = getObjectAndModuleFromFullName(builder_class)[0]
    recorder = ProgressRecorder(self)
    builder = builder_class(instance, recorder)
    builder.build()

    return {
        "errors": [repr(x) for x in builder.errors],
        "mapName": instance.name,
        "mapID": instance.id,
    }
Пример #3
0
def updateMolSet(self, molset_id, updater_class, updater_kwargs=None):
    if not updater_kwargs:
        updater_kwargs = dict()
    instance = MolSet.objects.get(pk=molset_id)
    updater_class, updater_module = getObjectAndModuleFromFullName(
        updater_class)
    updater = updater_class(instance, ProgressRecorder(self), **updater_kwargs)
    count = updater.updateInstance()
    return {
        "populationSize": count,
        "errors": [repr(x) for x in updater.errors]
    }
Пример #4
0
 def __init__(self,
              instance,
              progress_recorder=None,
              parser_class=None,
              instance_file_attr='file'):
     super().__init__(instance, progress_recorder=progress_recorder)
     if not parser_class:
         raise InvalidParserException(
             'No file parser specified for FileInitializer!')
     self.parserClass = getObjectAndModuleFromFullName(parser_class)[0]
     self.parser = self.parserClass(getattr(instance, instance_file_attr),
                                    instance)
Пример #5
0
def predictWithQSARModel(self, predictions_id, builder_class):
    instance = ModelActivitySet.objects.get(pk=predictions_id)
    model = QSARModel.objects.get(pk=instance.model.id)
    builder_class = getObjectAndModuleFromFullName(builder_class)[0]
    recorder = ProgressRecorder(self)
    builder = builder_class(model, recorder)
    builder.populateActivitySet(instance)

    return {
        "errors": [repr(x) for x in builder.errors],
        "modelName": model.name,
        "modelID": model.id,
        "activitySetName": instance.name,
        "activitySetID": instance.id,
    }
Пример #6
0
def populateMolSet(self,
                   molset_id,
                   initializer_class,
                   initializer_kwargs=None):
    if not initializer_kwargs:
        initializer_kwargs = dict()
    instance = MolSet.objects.get(pk=molset_id)
    initializer_class, initializer_module = getObjectAndModuleFromFullName(
        initializer_class)
    initializer = initializer_class(instance, ProgressRecorder(self),
                                    **initializer_kwargs)
    count = initializer.populateInstance()
    return {
        "populationSize": count,
        "errors": [repr(x) for x in initializer.errors]
    }
Пример #7
0
def buildDrugExModel(self, model_id, builder_class, model_class):
    # get the builder
    model_class = getattr(models, model_class)
    instance = model_class.objects.get(pk=model_id)
    builder_class = getObjectAndModuleFromFullName(builder_class)[0]
    recorder = ProgressRecorder(self)
    if hasattr(instance, 'parent'):
        builder = builder_class(instance, instance.parent, progress=recorder)
    else:
        builder = builder_class(instance, progress=recorder)

    # build the model
    try:
        builder.build()
    except Exception as exp:
        raise exp

    return {
        "errors": [repr(x) for x in builder.errors],
        "DrExModelName": instance.name,
        "DrExModelID": instance.id,
    }