comparison trackObject.py @ 26:a4a54b925c73 draft

planemo upload for repository https://github.com/Yating-L/jbrowse_hub commit e81fecac281f299db00cfc88a068e056b031ae9d-dirty
author yating-l
date Wed, 15 Mar 2017 10:51:23 -0400
parents e1f188b43750
children 5580dbf2a31c
comparison
equal deleted inserted replaced
25:55c62db02917 26:a4a54b925c73
3 import os 3 import os
4 import shutil 4 import shutil
5 import utils 5 import utils
6 import bedToGff3 6 import bedToGff3
7 import blastxmlToGff3 7 import blastxmlToGff3
8 import tempfile
9 import subprocess
8 10
9 class trackObject: 11 class trackObject:
10 def __init__(self, chrom_size, genome, extra_files_path): 12 def __init__(self, chrom_size, genome, extra_files_path):
11 self.chrom_size = chrom_size 13 self.chrom_size = chrom_size
12 outputDirect = os.path.join(extra_files_path, genome) 14 outputDirect = os.path.join(extra_files_path, genome)
28 Convert gff3, BED, blastxml and gtf files into gff3 files 30 Convert gff3, BED, blastxml and gtf files into gff3 files
29 and store converted files in folder 'raw' 31 and store converted files in folder 'raw'
30 ''' 32 '''
31 fileName = os.path.basename(dataFile) 33 fileName = os.path.basename(dataFile)
32 des_path = os.path.join(self.raw_folder, fileName) 34 des_path = os.path.join(self.raw_folder, fileName)
35 track = {}
33 if dataType == 'gff3_mrna' or dataType == 'gff3_transcript' or dataType == 'fasta' or dataType == 'bam' or dataType == 'bigwig' or dataType == 'bai': 36 if dataType == 'gff3_mrna' or dataType == 'gff3_transcript' or dataType == 'fasta' or dataType == 'bam' or dataType == 'bigwig' or dataType == 'bai':
37 if dataType == 'bam':
38 bam_index = utils.createBamIndex(dataFile)
39 indexname = os.path.basename(bam_index)
40 des_path_for_index = os.path.join(self.raw_folder, indexname)
41 shutil.copyfile(bam_index, des_path_for_index)
42 track['index'] = indexname
34 try: 43 try:
35 shutil.copyfile(dataFile, des_path) 44 shutil.copyfile(dataFile, des_path)
36 except shutil.Error as err1: 45 except shutil.Error as err1:
37 print "Cannot move file, error({0}: {1})".format(err1.errno, err1.strerror) 46 print "Cannot move file, error({0}: {1})".format(err1.errno, err1.strerror)
38 except IOError as err2: 47 except IOError as err2:
43 bedToGff3.bedToGff3(dataFile, self.chrom_size, 'regtools', des_path) 52 bedToGff3.bedToGff3(dataFile, self.chrom_size, 'regtools', des_path)
44 elif dataType == 'blastxml': 53 elif dataType == 'blastxml':
45 blastxmlToGff3.blastxml2gff3(dataFile, des_path) 54 blastxmlToGff3.blastxml2gff3(dataFile, des_path)
46 elif dataType == 'gtf': 55 elif dataType == 'gtf':
47 utils.gtfToGff3(dataFile, des_path, self.chrom_size) 56 utils.gtfToGff3(dataFile, des_path, self.chrom_size)
48 track = { 57 track['fileName'] = fileName
49 'fileName': fileName, 58 track['dataType'] = dataType
50 'dataType': dataType
51 }
52 self.tracks.append(track) 59 self.tracks.append(track)
53 60
54 61
55 62
56 ''' 63 '''