Loading lib/galaxy/visualization/data_providers/genome.py +43 −32 Original line number Diff line number Diff line Loading @@ -39,6 +39,7 @@ from galaxy.datatypes.util.gff_util import ( GFFReaderWrapper, parse_gff_attributes, ) from galaxy.exceptions import MessageException from galaxy.model import DatasetInstance from galaxy.visualization.data_providers.basic import BaseDataProvider from galaxy.visualization.data_providers.cigar import get_ref_based_read_seq_and_cigar Loading Loading @@ -106,9 +107,21 @@ class FeatureLocationIndexDataProvider(BaseDataProvider): self.converted_dataset = converted_dataset def get_data(self, query): if self.converted_dataset is None or not self.converted_dataset.is_ok: raise MessageException("The dataset is not available or is in an error state.") # Init. textloc_file = open(self.converted_dataset.get_file_name()) line_len = int(textloc_file.readline()) result = [] with open(self.converted_dataset.get_file_name()) as textloc_file: line = textloc_file.readline() if not line: raise MessageException("The dataset is empty.") try: line_len = int(line) except ValueError: raise MessageException(f"Expected an integer at first line, but found: '{line}'") if line_len < 1: raise MessageException(f"The first line must be a positive integer, but found: {line_len}") file_len = os.path.getsize(self.converted_dataset.get_file_name()) query = query.lower() Loading @@ -133,7 +146,6 @@ class FeatureLocationIndexDataProvider(BaseDataProvider): textloc_file.seek(position) # At right point in file, generate hits. result = [] while True: line = textloc_file.readline() if not line.startswith(query): Loading @@ -142,7 +154,6 @@ class FeatureLocationIndexDataProvider(BaseDataProvider): line = line[:-1] result.append(line.split()[1:]) textloc_file.close() return result Loading Loading
lib/galaxy/visualization/data_providers/genome.py +43 −32 Original line number Diff line number Diff line Loading @@ -39,6 +39,7 @@ from galaxy.datatypes.util.gff_util import ( GFFReaderWrapper, parse_gff_attributes, ) from galaxy.exceptions import MessageException from galaxy.model import DatasetInstance from galaxy.visualization.data_providers.basic import BaseDataProvider from galaxy.visualization.data_providers.cigar import get_ref_based_read_seq_and_cigar Loading Loading @@ -106,9 +107,21 @@ class FeatureLocationIndexDataProvider(BaseDataProvider): self.converted_dataset = converted_dataset def get_data(self, query): if self.converted_dataset is None or not self.converted_dataset.is_ok: raise MessageException("The dataset is not available or is in an error state.") # Init. textloc_file = open(self.converted_dataset.get_file_name()) line_len = int(textloc_file.readline()) result = [] with open(self.converted_dataset.get_file_name()) as textloc_file: line = textloc_file.readline() if not line: raise MessageException("The dataset is empty.") try: line_len = int(line) except ValueError: raise MessageException(f"Expected an integer at first line, but found: '{line}'") if line_len < 1: raise MessageException(f"The first line must be a positive integer, but found: {line_len}") file_len = os.path.getsize(self.converted_dataset.get_file_name()) query = query.lower() Loading @@ -133,7 +146,6 @@ class FeatureLocationIndexDataProvider(BaseDataProvider): textloc_file.seek(position) # At right point in file, generate hits. result = [] while True: line = textloc_file.readline() if not line.startswith(query): Loading @@ -142,7 +154,6 @@ class FeatureLocationIndexDataProvider(BaseDataProvider): line = line[:-1] result.append(line.split()[1:]) textloc_file.close() return result Loading