def renameStdTrack(genome, oldTn, newTn): oldPath = createOrigPath(genome, oldTn) assert os.path.exists(oldPath), 'ERROR: TN did not exist in stdTracks: ' + oldPath print '(renaming track in stdTracks..)' newPath = createOrigPath(genome, newTn) if not ONLY_SIMULATION: assert not os.path.exists(newPath), 'ERROR: Target path already exists: ' + newPath ensurePathExists(newPath) print 'Moving from %s to %s' % (oldPath, newPath) shutil.move(oldPath, newPath) else: print 'Would move %s to %s' % (oldPath, newPath)
def renameStdTrack(genome, oldTn, newTn): oldPath = createOrigPath(genome, oldTn) assert os.path.exists( oldPath), 'ERROR: TN did not exist in stdTracks: ' + oldPath print '(renaming track in stdTracks..)' newPath = createOrigPath(genome, newTn) if not ONLY_SIMULATION: assert not os.path.exists( newPath), 'ERROR: Target path already exists: ' + newPath ensurePathExists(newPath) print 'Moving from %s to %s' % (oldPath, newPath) shutil.move(oldPath, newPath) else: print 'Would move %s to %s' % (oldPath, newPath)
def yielder(self): #literatureTN = GenomeInfo.getPropertyTrackName(self._genome, 'literature') #literatureTNBase = literatureTN[:-1] basePath = createOrigPath(self._genome, self._trackNameFilter) for root, dirs, files in os.walk(basePath,topdown=True): dirsToRemove = [] if root==basePath: dirsToRemove.append('Trash') dirsToRemove.append('Trashcan') trackName = extractTrackNameFromOrigPath(root) #if self._avoidLiterature and trackName == literatureTNBase: #dirsToRemove.append(literatureTN[-1]) for oneDir in dirs: if oneDir[0] in ['.','_','#']: dirsToRemove.append(oneDir) for rmDir in dirsToRemove: if rmDir in dirs: dirs.remove(rmDir) #if sum(1 for f in files if f[0] not in ['.','_','#']) == 0: # continue #if any([part[0]=='.' for part in trackName]): # continue filterLen = len(self._trackNameFilter) if (self._trackNameFilter != trackName[:filterLen]): continue yield trackName
def _writeTestFile(self, case): fn = createOrigPath(self.GENOME, self.TRACK_NAME_PREFIX + case.trackName, 'testfile' + case.suffix) ensurePathExists(fn) testfile = open(fn, 'w') testfile.write('\n'.join(case.headerLines + case.lines)) testfile.close() return fn
def _commonSetup(self): from gtrackcore.test.input.core.TestGenomeElementSource import TestGenomeElementSource testGESource = TestGenomeElementSource() testGESource.setUp() origDir = createOrigPath(self.GENOME, self.TRACK_NAME_PREFIX) self._removeDir(origDir, self.TRACK_NAME_PREFIX) return testGESource
def yielder(self): #literatureTN = GenomeInfo.getPropertyTrackName(self._genome, 'literature') #literatureTNBase = literatureTN[:-1] basePath = createOrigPath(self._genome, self._trackNameFilter) for root, dirs, files in os.walk(basePath, topdown=True): dirsToRemove = [] if root == basePath: dirsToRemove.append('Trash') dirsToRemove.append('Trashcan') trackName = extractTrackNameFromOrigPath(root) #if self._avoidLiterature and trackName == literatureTNBase: #dirsToRemove.append(literatureTN[-1]) for oneDir in dirs: if oneDir[0] in ['.', '_', '#']: dirsToRemove.append(oneDir) for rmDir in dirsToRemove: if rmDir in dirs: dirs.remove(rmDir) #if sum(1 for f in files if f[0] not in ['.','_','#']) == 0: # continue #if any([part[0]=='.' for part in trackName]): # continue filterLen = len(self._trackNameFilter) if (self._trackNameFilter != trackName[:filterLen]): continue yield trackName
def _removeAllTrackData(self, trackName, removeOrigData=True): self._removeDir( createDirPath(trackName, self.GENOME, allowOverlaps=False), trackName) self._removeDir( createDirPath(trackName, self.GENOME, allowOverlaps=True), trackName) if removeOrigData: self._removeDir(createOrigPath(self.GENOME, trackName), trackName)
def importFile(fileName, genome, trackName): """fileName genome trackName""" trackName = _convertTrackName(trackName) from gtrackcore.util.CommonFunctions import createOrigPath, ensurePathExists origFn = createOrigPath(genome, trackName, os.path.basename(fileName)) if os.path.exists(origFn): shutil.rmtree(os.path.dirname(origFn)) ensurePathExists(origFn) shutil.copy(fileName, origFn) os.chmod(origFn, 0664) from gtrackcore.preprocess.PreProcessTracksJob import PreProcessAllTracksJob PreProcessAllTracksJob(genome, trackName).process()
def _allGESources(self, trackName): baseDir = createOrigPath(self._genome, trackName) self._status = 'Trying os.listdir on: ' + baseDir for relFn in sorted(os.listdir( baseDir )): fn = os.sep.join([baseDir, relFn]) self._status = 'Checking file: ' + fn if os.path.isdir(fn): continue fnPart = os.path.split(fn)[-1] if fnPart[0] in ['.','_','#'] or fnPart[-1] in ['~','#']: #to avoid hidden files.. continue self._status = 'Trying to create geSource from fn: ' + fn yield GenomeElementSource(fn, self._genome, forPreProcessor=True)
def _allGESources(self, trackName): baseDir = createOrigPath(self._genome, trackName) self._status = 'Trying os.listdir on: ' + baseDir for relFn in sorted(os.listdir(baseDir)): fn = os.sep.join([baseDir, relFn]) self._status = 'Checking file: ' + fn if os.path.isdir(fn): continue fnPart = os.path.split(fn)[-1] if fnPart[0] in ['.', '_', '#'] or fnPart[-1] in [ '~', '#' ]: #to avoid hidden files.. continue self._status = 'Trying to create geSource from fn: ' + fn yield GenomeElementSource(fn, self._genome, forPreProcessor=True)
def _removeAllTrackData(self, trackName, removeOrigData=True): self._removeDir(createDirPath(trackName, self.GENOME, allowOverlaps=False), trackName) self._removeDir(createDirPath(trackName, self.GENOME, allowOverlaps=True), trackName) if removeOrigData: self._removeDir(createOrigPath(self.GENOME, trackName), trackName)