diff --git a/python/obitools3/commands/import.pyx b/python/obitools3/commands/import.pyx index 9217473..344a1da 100755 --- a/python/obitools3/commands/import.pyx +++ b/python/obitools3/commands/import.pyx @@ -144,6 +144,20 @@ def run(config): o_dms = output[0] + # Read taxdump + if config['obi']['taxdump']: # The input is a taxdump to import in a DMS + # Check if taxonomy name isn't already taken + taxo_name = output[1].split(b'/')[1] + if Taxonomy.exists(o_dms, taxo_name): + raise Exception("Taxonomy name already exists in this DMS") + taxo = Taxonomy.open_taxdump(o_dms, config['obi']['inputURI']) + taxo.write(taxo_name) + taxo.close() + o_dms.record_command_line(" ".join(sys.argv[1:])) + o_dms.close() + logger("info", "Done.") + return + # If importing a view between two DMS, use C API if isinstance(input[1], View): if obi_import_view(input[0].name_with_full_path, o_dms.name_with_full_path, input[1].name, tobytes((config['obi']['outputURI'].split('/'))[-1])) < 0 : @@ -153,21 +167,6 @@ def run(config): logger("info", "Done.") return - - # Read taxdump - if config['obi']['taxdump']: # The input is a taxdump to import in a DMS - # Check if taxonomy name isn't already taken - taxo_name = output[1] - if Taxonomy.exists(o_dms, taxo_name.split(b'/')[1]): - raise Exception("Taxonomy name already exists in this DMS") - taxo = Taxonomy.open_taxdump(o_dms, config['obi']['inputURI']) - taxo.write(taxo_name) - taxo.close() - o_dms.record_command_line(" ".join(sys.argv[1:])) - o_dms.close() - logger("info", "Done.") - return - if entry_count >= 0: pb = ProgressBar(entry_count, config, seconde=5)