comparison util/index/TrixIndex.py @ 1:85195e0d4b71 draft

planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit b1ae7349f118a0fe7923d765020dfc684cf84116-dirty
author yating-l
date Fri, 29 Sep 2017 13:32:23 -0400
parents
children fa990284327b
comparison
equal deleted inserted replaced
0:f9ccc5ad1713 1:85195e0d4b71
1 #!/usr/bin/python
2
3 import os
4 import collections
5 import shutil
6 import logging
7 from ExternIndex import ExternIndex
8
9 class TrixIndex(ExternIndex):
10 def __init__(self, indexIx, indexIxx, trackName, mySpecieFolderPath, trixId, **args):
11 self.indexIx = indexIx
12 self.indexIxx = indexIxx
13 self.trackName = trackName
14 self.mySpecieFolderPath = mySpecieFolderPath
15 self.trixId = trixId
16 self.index_settings = collections.OrderedDict()
17 if "default_index" in args:
18 self.default_index = args["default_index"]
19 else:
20 self.default_index = None
21
22 def setExtLink(self):
23 self.setSearchIndex()
24 self.moveIndexFile()
25 self.index_settings["searchTrix"] = "trix/%s" % self.indexIxName
26 return self.index_settings
27
28 def moveIndexFile(self):
29 indexFolder = os.path.join(self.mySpecieFolderPath, 'trix')
30 self.indexIxName = "".join( ( self.trackName, ".ix") )
31 self.indexIxxName = "".join( ( self.trackName, ".ixx") )
32 if not os.path.exists(indexFolder):
33 os.makedirs(indexFolder)
34
35 # Move index files to the index folder
36 self.indexIxPath = os.path.join(indexFolder, self.indexIxName)
37 shutil.copyfile(self.indexIx, self.indexIxPath)
38 self.indexIxxPath = os.path.join(indexFolder, self.indexIxxName)
39 shutil.copyfile(self.indexIxx, self.indexIxxPath)
40
41 def setSearchIndex(self):
42 if self.default_index:
43 set_index = set()
44 set_index.add(self.trixId)
45 set_index.add(self.default_index)
46 search_index = ",".join(set_index)
47 else:
48 search_index = self.trixId
49 logging.debug("trixId= %s, searchIndex= %s", self.trixId, search_index)
50 self.index_settings["searchIndex"] = search_index
51