Mercurial > repos > yating-l > jbrowsearchivecreator
view util/index/DatabaseIndex.py @ 10:e2ebf58c9068 draft
planemo upload for repository https://github.com/goeckslab/jbrowse-archive-creator.git commit 8ace9ad3a69a56a9b0d5feae266f90301d9aac77
author | yating-l |
---|---|
date | Mon, 14 May 2018 21:37:50 -0400 |
parents | 237707a6b74d |
children | 3f9971a91096 |
line wrap: on
line source
#!/usr/bin/python import collections from ExternIndex import ExternIndex class DatabaseIndex(ExternIndex): def __init__(self, database, **args): self.database = database self.seqType=args.get("seqType") self.useIframe=args.get("useIframe") self.iframeHeight=args.get("iframeHeight") self.iframeWidth=args.get("iframeWidth") def setExtLink(self): return self.setDatabaseLink(self.database, self.seqType, self.useIframe, self.iframeHeight, self.iframeWidth) def setDatabaseLink(self, database, seqType=None, useIframe=None, iframeHeight=None, iframeWidth=None): database_settings = collections.OrderedDict() if "NCBI" in database: if not seqType: database_settings["url"] = "https://www.ncbi.nlm.nih.gov/gquery/?term=$$" elif seqType == 2: database_settings["url"] = "https://www.ncbi.nlm.nih.gov/protein/$$" elif seqType == 1: database_settings["url"] = "https://www.ncbi.nlm.nih.gov/nuccore/$$" else: raise Exception("Sequence Type {0} is not valid, should be either protein (seqType==2) or nucleotide (seqType==1). Stopping the application".format(seqType)) elif "UniProt" in database: database_settings["url"] = "http://www.uniprot.org/uniprot/$$" elif "FlyBase" in database: database_settings["url"] = "http://flybase.org/reports/$$" else: database_settings["url"] = "https://www.ncbi.nlm.nih.gov/gquery/?term=$$" database_settings["urlLabel"] = database + " Details:" if useIframe or useIframe is None: database_settings["iframeUrl"] = database_settings["url"] if not iframeHeight: iframeHeight = "600" if not iframeWidth: iframeWidth = "800" database_settings["iframeOptions"] = "height= %s width= %s" % (iframeHeight, iframeWidth) return database_settings