obi import: added basic taxdump import
This commit is contained in:
@ -8,6 +8,8 @@ from obitools3.dms.view.typed_view.view_NUC_SEQS cimport View_NUC_SEQS
|
|||||||
from obitools3.dms.column.column cimport Column
|
from obitools3.dms.column.column cimport Column
|
||||||
from obitools3.dms.obiseq cimport Nuc_Seq
|
from obitools3.dms.obiseq cimport Nuc_Seq
|
||||||
from obitools3.dms import DMS
|
from obitools3.dms import DMS
|
||||||
|
from obitools3.dms.taxo.taxo cimport Taxonomy
|
||||||
|
|
||||||
|
|
||||||
from obitools3.utils cimport tobytes, \
|
from obitools3.utils cimport tobytes, \
|
||||||
get_obitype, \
|
get_obitype, \
|
||||||
@ -19,7 +21,10 @@ from obitools3.dms.capi.obitypes cimport obitype_t, \
|
|||||||
|
|
||||||
from obitools3.dms.capi.obierrno cimport obi_errno
|
from obitools3.dms.capi.obierrno cimport obi_errno
|
||||||
|
|
||||||
from obitools3.apps.optiongroups import addSequenceInputOption, addTabularInputOption, addMinimalOutputOption
|
from obitools3.apps.optiongroups import addSequenceInputOption, \
|
||||||
|
addTabularInputOption, \
|
||||||
|
addMinimalOutputOption, \
|
||||||
|
addTaxdumpInputOption
|
||||||
|
|
||||||
from obitools3.uri.decode import open_uri
|
from obitools3.uri.decode import open_uri
|
||||||
|
|
||||||
@ -42,7 +47,7 @@ def addOptions(parser):
|
|||||||
addSequenceInputOption(parser)
|
addSequenceInputOption(parser)
|
||||||
addTabularInputOption(parser)
|
addTabularInputOption(parser)
|
||||||
addMinimalOutputOption(parser)
|
addMinimalOutputOption(parser)
|
||||||
# addTaxdumpInputOption(parser)
|
addTaxdumpInputOption(parser)
|
||||||
|
|
||||||
|
|
||||||
def run(config):
|
def run(config):
|
||||||
@ -85,6 +90,19 @@ def run(config):
|
|||||||
logger("info","obi import : imports file into an DMS")
|
logger("info","obi import : imports file into an DMS")
|
||||||
|
|
||||||
input = open_uri(config['obi']['inputURI'])
|
input = open_uri(config['obi']['inputURI'])
|
||||||
|
if input is None:
|
||||||
|
raise Exception("Could not open input URI")
|
||||||
|
|
||||||
|
# TODO read taxdump with URI?
|
||||||
|
if 'taxdump' in config['obi']:
|
||||||
|
taxo = Taxonomy.open_taxdump(input[0], config['obi']['taxdump'])
|
||||||
|
# Read prefix (temporary fix)
|
||||||
|
uri = config['obi']['outputURI'].split('/')
|
||||||
|
idx = uri.index('taxonomy') + 1
|
||||||
|
taxo.write(uri[idx])
|
||||||
|
taxo.close()
|
||||||
|
input[0].close()
|
||||||
|
return
|
||||||
|
|
||||||
if input[2]==Nuc_Seq:
|
if input[2]==Nuc_Seq:
|
||||||
v = View_NUC_SEQS
|
v = View_NUC_SEQS
|
||||||
|
Reference in New Issue
Block a user