mirror of
https://github.com/Novartis/cellxgene-gateway.git
synced 2026-10-06 17:18:11 +08:00
#22 blackened code
This commit is contained in:
@@ -16,6 +16,7 @@ from cellxgene_gateway.cellxgene_exception import CellxgeneException
|
||||
from cellxgene_gateway.dir_util import make_h5ad
|
||||
from cellxgene_gateway.cache_key import CacheKey
|
||||
|
||||
|
||||
def get_key(path):
|
||||
if path == "/" or path == "":
|
||||
raise CellxgeneException(
|
||||
@@ -25,10 +26,10 @@ def get_key(path):
|
||||
trimmed = path[:-1] if path[-1] == "/" else path
|
||||
try:
|
||||
# valid paths come in three forms:
|
||||
if trimmed.endswith('.h5ad') and data_file_exists(trimmed):
|
||||
if trimmed.endswith(".h5ad") and data_file_exists(trimmed):
|
||||
# 1) somedir/dataset.h5ad: a dataset
|
||||
return CacheKey(trimmed, trimmed, None)
|
||||
elif trimmed.endswith('.csv'):
|
||||
elif trimmed.endswith(".csv"):
|
||||
|
||||
# 2) somedir/dataset_annotations/saldaal1-T5HMVBNV.csv : an actual annotations file.
|
||||
annotations_dir = os.path.split(trimmed)[0]
|
||||
@@ -36,22 +37,24 @@ def get_key(path):
|
||||
if data_file_exists(dataset):
|
||||
data_dir_ensure(annotations_dir)
|
||||
return CacheKey(trimmed, dataset, trimmed)
|
||||
elif trimmed.endswith('_annotations') and data_dir_exists(trimmed):
|
||||
elif trimmed.endswith("_annotations") and data_dir_exists(trimmed):
|
||||
# 3) somedir/dataset_annotations: an annotation directory. The corresponding h5ad must exist, but the directory may not.
|
||||
dataset = make_h5ad(trimmed)
|
||||
if data_file_exists(dataset):
|
||||
return CacheKey(trimmed, dataset, '')
|
||||
return CacheKey(trimmed, dataset, "")
|
||||
except CellxgeneException:
|
||||
pass
|
||||
split = os.path.split(trimmed)
|
||||
return get_key(split[0])
|
||||
|
||||
|
||||
def validate_exists(file_path):
|
||||
if not os.path.exists(file_path):
|
||||
raise CellxgeneException(
|
||||
"File does not exist: " + file_path, status.HTTP_400_BAD_REQUEST
|
||||
)
|
||||
|
||||
|
||||
def validate_is_file(file_path):
|
||||
validate_exists(file_path)
|
||||
if not os.path.isfile(file_path):
|
||||
@@ -59,6 +62,8 @@ def validate_is_file(file_path):
|
||||
"Path is not file: " + file_path, status.HTTP_400_BAD_REQUEST
|
||||
)
|
||||
return
|
||||
|
||||
|
||||
def validate_is_dir(file_path):
|
||||
validate_exists(file_path)
|
||||
if not os.path.isdir(file_path):
|
||||
@@ -67,29 +72,36 @@ def validate_is_dir(file_path):
|
||||
)
|
||||
return
|
||||
|
||||
|
||||
def data_file_exists(dataset):
|
||||
file_path = os.path.join(env.cellxgene_data, dataset)
|
||||
validate_is_file(file_path)
|
||||
return True
|
||||
|
||||
|
||||
def data_dir_exists(dataset):
|
||||
file_path = os.path.join(env.cellxgene_data, dataset)
|
||||
validate_is_dir(file_path)
|
||||
return True
|
||||
|
||||
|
||||
def data_dir_ensure(dataset):
|
||||
file_path = os.path.join(env.cellxgene_data, dataset)
|
||||
if not os.path.exists(file_path):
|
||||
os.makedirs(file_path)
|
||||
|
||||
|
||||
def get_file_path(key):
|
||||
dataset = key.dataset
|
||||
file_path = os.path.join(env.cellxgene_data, dataset)
|
||||
validate_is_file(file_path)
|
||||
return file_path
|
||||
|
||||
|
||||
def get_annotation_file_path(key):
|
||||
if key.annotation_file is None:
|
||||
return None
|
||||
if key.annotation_file == '':
|
||||
return ''
|
||||
if key.annotation_file == "":
|
||||
return ""
|
||||
file_path = os.path.join(env.cellxgene_data, key.annotation_file)
|
||||
return file_path
|
||||
|
||||
Reference in New Issue
Block a user