def process_contig(self): """Process nuclotide sequence(s).""" file_name = os.path.basename(self.input_sequence) orf_obj = ORF(input_file=self.input_sequence, threads=self.threads, clean=self.clean, working_directory=self.working_directory, low_quality=self.low_quality, split_prodigal_jobs=self.split_prodigal_jobs) orf_obj.contig_to_orf() contig_fsa_file = os.path.join(self.working_directory,"{}.temp.contig.fsa".format(file_name)) blast_results_xml_file = os.path.join(self.working_directory,"{}.temp.contig.fsa.blastRes.xml".format(file_name)) try: if os.stat(contig_fsa_file).st_size > 0: logger.info("work with file {}".format(contig_fsa_file)) if self.aligner == "diamond": diamond_obj = Diamond(contig_fsa_file, local_database=self.local_database, num_threads=self.threads) diamond_obj.run() else: blast_obj = Blast(contig_fsa_file, local_database=self.local_database, num_threads=self.threads) blast_obj.run() self.set_xml_filepath(blast_results_xml_file) else: self.write_stub_output_file() logger.error("no open reading frames (orfs) found.") except Exception as e: self.write_stub_output_file() logger.exception("failed to write orf file") else: # logger.info("success procession orf file") pass
def blast_reference_to_db_query(self, db, xml_file): logger.info("blast_reference_to_db_query") # blast all rrna db against query db rrna_db_fasta = os.path.join(self.rgi_obj.db, "rnadb.fsa") blast_obj = Blast(rrna_db_fasta, program='blastn', output_file=xml_file, local_database=self.rgi_obj.local_database) blast_obj.run_custom(db)
def process_protein(self): """Process protein sequence(s).""" file_name = os.path.basename(self.input_sequence) xml_file = os.path.join(self.working_directory,"{}.temp.blastRes.xml".format(file_name)) if self.aligner == "diamond": diamond_obj = Diamond(self.input_sequence, xml_file, local_database=self.local_database, num_threads=self.threads) diamond_obj.run() else: blast_obj = Blast(self.input_sequence, xml_file, local_database=self.local_database, num_threads=self.threads) blast_obj.run() self.set_xml_filepath(xml_file)