URIs: added stdout output (empty URI)

This commit is contained in:
Celine Mercier
2019-09-17 12:28:10 +02:00
parent eb913b2742
commit 88451116e8

View File

@ -3,6 +3,8 @@
from urllib.parse import urlparse, urlunparse, parse_qs, ParseResultBytes
from os.path import isdir, isfile, basename, join
import sys
from obitools3.dms.dms import DMS
from obitools3.parsers.fasta import fastaNucIterator
@ -224,34 +226,35 @@ def open_uri(uri,
type(dms[1]),
urlunparse(urip),
len(dms[0]))
try:
resource=open_dms_element(dms[0],
dms[1],
create,
newviewtype)
scheme=b"dms"
urip = ParseResultBytes(scheme=b"dms",
netloc=urip.netloc,
path=urip.path,
params=urip.params,
query=urip.query,
fragment=urip.fragment)
if default_dms is None:
config["obi"]["defaultdms"]=resource[0]
return (resource[0],
resource[1],
type(resource[1]),
urlunparse(urip),
len(resource[1]))
except Exception as e:
global obi_errno
if obi_errno == OBIVIEW_ALREADY_EXISTS_ERROR:
raise Exception("View name already exists in this DMS")
error=e
if dms[1]:
try:
resource=open_dms_element(dms[0],
dms[1],
create,
newviewtype)
scheme=b"dms"
urip = ParseResultBytes(scheme=b"dms",
netloc=urip.netloc,
path=urip.path,
params=urip.params,
query=urip.query,
fragment=urip.fragment)
if default_dms is None:
config["obi"]["defaultdms"]=resource[0]
return (resource[0],
resource[1],
type(resource[1]),
urlunparse(urip),
len(resource[1]))
except Exception as e:
global obi_errno
if obi_errno == OBIVIEW_ALREADY_EXISTS_ERROR:
raise Exception("View name already exists in this DMS")
error=e
if scheme==b"dms" :
logger('Error','Could not open DMS URI: %s', uri)
raise FileNotFoundError()
@ -268,7 +271,10 @@ def open_uri(uri,
iseq = urib
objclass = bytes
else: # TODO update uopen to be able to write?
file = open(urip.path, 'wb')
if urip.path:
file = open(urip.path, 'wb')
else:
file = sys.stdout.buffer
if file is not None:
qualifiers=parse_qs(urip.query)