Mercurial > repos > yating-l > hubarchivecreator
diff 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 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/util/index/TrixIndex.py Mon Oct 30 12:01:23 2017 -0400 @@ -0,0 +1,51 @@ +#!/usr/bin/python + +import os +import collections +import shutil +import logging +from ExternIndex import ExternIndex + +class TrixIndex(ExternIndex): + def __init__(self, indexIx, indexIxx, trackName, mySpecieFolderPath, **args): + self.logger = logging.getLogger(__name__) + self.indexIx = indexIx + self.indexIxx = indexIxx + self.trackName = trackName + self.mySpecieFolderPath = mySpecieFolderPath + self.index_settings = collections.OrderedDict() + if "trixId" in args: + self.trixId = args["trixId"] + else: + self.trixId = None + + def setExtLink(self): + self.moveIndexFile() + self.index_settings["searchTrix"] = "trix/%s" % self.indexIxName + return self.index_settings + + def moveIndexFile(self): + indexFolder = os.path.join(self.mySpecieFolderPath, 'trix') + self.indexIxName = "".join( ( self.trackName, ".ix") ) + self.indexIxxName = "".join( ( self.trackName, ".ixx") ) + if not os.path.exists(indexFolder): + os.makedirs(indexFolder) + + # Move index files to the index folder + self.indexIxPath = os.path.join(indexFolder, self.indexIxName) + shutil.copyfile(self.indexIx, self.indexIxPath) + self.indexIxxPath = os.path.join(indexFolder, self.indexIxxName) + shutil.copyfile(self.indexIxx, self.indexIxxPath) + + def setSearchIndex(self): + if self.trixId: + set_index = set() + set_index.add(self.trixId) + set_index.add("name") + search_index = ",".join(set_index) + else: + search_index = "name" + logging.debug("trixId= %s, searchIndex= %s", self.trixId, search_index) + self.index_settings["searchIndex"] = search_index + +