Skip to content
Snippets Groups Projects
Commit b717139e authored by AndiMajore's avatar AndiMajore
Browse files

added output to remove old datasets functions to identify problem in next update

parent 78cc9b83
No related branches found
No related tags found
No related merge requests found
Pipeline #63436 failed
......@@ -256,7 +256,7 @@ class NedrexImporter:
iter_edge_collection('drug_has_target', add_dpi)
models.ProteinDrugInteraction.objects.bulk_create(bulk)
new_datasets = [dataset, source_datasets.values()]
new_datasets = [dataset].extend(source_datasets.values())
DatasetLoader.remove_old_pdi_data(new_datasets, licenced)
return len(bulk)
......
......@@ -10,6 +10,8 @@ from drugstone.management.includes.DataPopulator import DataPopulator
from .import_from_nedrex import NedrexImporter
from drugstone.management.includes.NodeCache import NodeCache
from drugstone.management.includes import DatasetLoader
from ..includes.DatasetLoader import remove_old_pdi_data, remove_old_ppi_data, remove_old_pdis_data, \
remove_old_drdi_data
class DatabasePopulator:
......@@ -59,7 +61,6 @@ class DatabasePopulator:
class Command(BaseCommand):
def add_arguments(self, parser):
# dataset directory
parser.add_argument('-dd', '--data_dir', type=str, help='Dataset directory path')
parser.add_argument('-dm', '--delete_model', type=str, help='Delete model(s)')
......@@ -80,19 +81,28 @@ class Command(BaseCommand):
parser.add_argument('-pdi', '--protein_disorder', action='store_true',
help='Populate Protein-Disorder Associations')
parser.add_argument('-ddi', '--drug_disorder', action='store_true', help='Populate Drug-Disorder Indications')
parser.add_argument('-t', '--test', action='store_true', help='Running some function on startup')
def handle(self, *args, **kwargs):
populate(kwargs)
def populate(kwargs):
def populate(kwargs):
nedrex_api_url_open = "https://api.nedrex.net/open"
nedrex_api_url_licensed = "https://api.nedrex.net/licensed"
data_dir = kwargs['data_dir']
db_populator = DatabasePopulator(data_dir=data_dir)
if 'test' in kwargs and kwargs['test']:
pass
# remove_old_ppi_data([PPIDataset.objects.filter(name='biogrid', licenced=False).last()], False)
# remove_old_ppi_data([PPIDataset.objects.filter(name='iid', licenced=False).last()], False)
# remove_old_ppi_data([PPIDataset.objects.filter(name='intact', licenced=False).last()], False)
# remove_old_pdis_data([PDisDataset.objects.filter(name='disgenet', licenced=False).last()], False)
# remove_old_pdis_data([PDisDataset.objects.filter(name='omim', licenced=True).last()], True)
# remove_old_drdi_data([DrDiDataset.objects.filter(name='ctd', licenced=False).last()], False)
# remove_old_drdi_data([DrDiDataset.objects.filter(name='drugcentral', licenced=False).last()], False)
if 'clear' in kwargs and kwargs['clear']:
db_populator.delete_all()
......@@ -121,7 +131,7 @@ def populate(kwargs):
if kwargs['drugs']:
print('Populating Drugs...')
n = NedrexImporter.import_drugs(importer, update)
total_n +=n
total_n += n
nedrex_update = True
print(f'Populated {n} Drugs.')
......@@ -152,14 +162,16 @@ def populate(kwargs):
if kwargs['protein_drug']:
print('Importing PDIs from unlicensed NeDRexDB...')
n = NedrexImporter.import_drug_target_interactions(importer,
DatasetLoader.get_drug_target_nedrex(nedrex_api_url_open, False),
DatasetLoader.get_drug_target_nedrex(nedrex_api_url_open,
False),
update)
total_n += n
print(f'Imported {n} PDIs from unlicensed NeDRexDB')
print('Importing PDIs from licensed NeDRexDB...')
n = NedrexImporter.import_drug_target_interactions(importer,
DatasetLoader.get_drug_target_nedrex(nedrex_api_url_licensed, True),
DatasetLoader.get_drug_target_nedrex(nedrex_api_url_licensed,
True),
update)
total_n += n
nedrex_update = True
......@@ -196,7 +208,8 @@ def populate(kwargs):
if kwargs['drug_disorder']:
print('Importing DrDis from unlicensed NeDRexDB...')
n = NedrexImporter.import_drug_disorder_indications(importer,
DatasetLoader.get_drug_disorder_nedrex(nedrex_api_url_open, False),
DatasetLoader.get_drug_disorder_nedrex(nedrex_api_url_open,
False),
update)
total_n += n
print(f'Imported {n} DrDis from unlicensed NeDRexDB')
......
......@@ -302,39 +302,59 @@ def is_licenced_drdi_source(source):
def remove_old_pdi_data(new_datasets, licenced):
for dataset in new_datasets:
print("Deleting all except "+str(dataset))
try:
for d in models.PDIDataset.objects.filter(name=dataset.name, licenced=licenced):
print("Testing: "+str(d))
if d != dataset:
print("Deleting: "+str(d))
d.delete()
except:
except Exception as e:
print("Error when trying to delete old datasets")
print(e)
continue
def remove_old_ppi_data(new_datasets, licenced):
for dataset in new_datasets:
print("Deleting all except " + str(dataset))
try:
for d in models.PPIDataset.objects.filter(name=dataset.name, licenced=licenced):
print("Testing: " + str(d))
if d != dataset:
print("Deleting: " + str(d))
d.delete()
except:
except Exception as e:
print("Error when trying to delete old datasets")
print(e)
continue
def remove_old_pdis_data(new_datasets, licenced):
for dataset in new_datasets:
print("Deleting all except " + str(dataset))
try:
for d in models.PDisDataset.objects.filter(name=dataset.name, licenced=licenced):
print("Testing: " + str(d))
if d != dataset:
print("Deleting: " + str(d))
d.delete()
except:
except Exception as e:
print("Error when trying to delete old datasets")
print(e)
continue
def remove_old_drdi_data(new_datasets, licenced):
for dataset in new_datasets:
print("Deleting all except " + str(dataset))
try:
for d in models.DrDiDataset.objects.filter(name=dataset.name, licenced=licenced):
print("Testing: " + str(d))
if d != dataset:
print("Deleting: " + str(d))
d.delete()
except:
except Exception as e:
print("Error when trying to delete old datasets")
print(e)
continue
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment