comparison util/index/TrixIndex.py @ 83:0bc486356e2a draft

planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit ac73da32d59853ca563e7939d05016a6f3a6899e-dirty
author yating-l
date Mon, 30 Oct 2017 12:01:23 -0400
parents
children cb62314a6297
comparison
equal deleted inserted replaced
82:62600ac1d0f7 83:0bc486356e2a
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, **args):
11 self.logger = logging.getLogger(__name__)
12 self.indexIx = indexIx
13 self.indexIxx = indexIxx
14 self.trackName = trackName
15 self.mySpecieFolderPath = mySpecieFolderPath
16 self.index_settings = collections.OrderedDict()
17 if "trixId" in args:
18 self.trixId = args["trixId"]
19 else:
20 self.trixId = None
21
22 def setExtLink(self):
23 self.moveIndexFile()
24 self.index_settings["searchTrix"] = "trix/%s" % self.indexIxName
25 return self.index_settings
26
27 def moveIndexFile(self):
28 indexFolder = os.path.join(self.mySpecieFolderPath, 'trix')
29 self.indexIxName = "".join( ( self.trackName, ".ix") )
30 self.indexIxxName = "".join( ( self.trackName, ".ixx") )
31 if not os.path.exists(indexFolder):
32 os.makedirs(indexFolder)
33
34 # Move index files to the index folder
35 self.indexIxPath = os.path.join(indexFolder, self.indexIxName)
36 shutil.copyfile(self.indexIx, self.indexIxPath)
37 self.indexIxxPath = os.path.join(indexFolder, self.indexIxxName)
38 shutil.copyfile(self.indexIxx, self.indexIxxPath)
39
40 def setSearchIndex(self):
41 if self.trixId:
42 set_index = set()
43 set_index.add(self.trixId)
44 set_index.add("name")
45 search_index = ",".join(set_index)
46 else:
47 search_index = "name"
48 logging.debug("trixId= %s, searchIndex= %s", self.trixId, search_index)
49 self.index_settings["searchIndex"] = search_index
50
51