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

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

Former-commit-id: ccea3c2b
parent f696e9b8
No related branches found
No related tags found
No related merge requests found
......@@ -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()
......@@ -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.
Please register or to comment