Mercurial > repos > yating-l > jbrowsearchivecreator
annotate util/index/DatabaseIndex.py @ 6:237707a6b74d draft
planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit a500f7ab2119cc5faaf80393bd87428389d06880-dirty
| author | yating-l | 
|---|---|
| date | Thu, 15 Feb 2018 17:05:05 -0500 | 
| parents | |
| children | 3f9971a91096 | 
| rev | line source | 
|---|---|
| 
6
 
237707a6b74d
planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit a500f7ab2119cc5faaf80393bd87428389d06880-dirty
 
yating-l 
parents:  
diff
changeset
 | 
1 #!/usr/bin/python | 
| 
 
237707a6b74d
planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit a500f7ab2119cc5faaf80393bd87428389d06880-dirty
 
yating-l 
parents:  
diff
changeset
 | 
2 | 
| 
 
237707a6b74d
planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit a500f7ab2119cc5faaf80393bd87428389d06880-dirty
 
yating-l 
parents:  
diff
changeset
 | 
3 import collections | 
| 
 
237707a6b74d
planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit a500f7ab2119cc5faaf80393bd87428389d06880-dirty
 
yating-l 
parents:  
diff
changeset
 | 
4 from ExternIndex import ExternIndex | 
| 
 
237707a6b74d
planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit a500f7ab2119cc5faaf80393bd87428389d06880-dirty
 
yating-l 
parents:  
diff
changeset
 | 
5 | 
| 
 
237707a6b74d
planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit a500f7ab2119cc5faaf80393bd87428389d06880-dirty
 
yating-l 
parents:  
diff
changeset
 | 
6 class DatabaseIndex(ExternIndex): | 
| 
 
237707a6b74d
planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit a500f7ab2119cc5faaf80393bd87428389d06880-dirty
 
yating-l 
parents:  
diff
changeset
 | 
7 def __init__(self, database, **args): | 
| 
 
237707a6b74d
planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit a500f7ab2119cc5faaf80393bd87428389d06880-dirty
 
yating-l 
parents:  
diff
changeset
 | 
8 self.database = database | 
| 
 
237707a6b74d
planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit a500f7ab2119cc5faaf80393bd87428389d06880-dirty
 
yating-l 
parents:  
diff
changeset
 | 
9 self.seqType=args.get("seqType") | 
| 
 
237707a6b74d
planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit a500f7ab2119cc5faaf80393bd87428389d06880-dirty
 
yating-l 
parents:  
diff
changeset
 | 
10 self.useIframe=args.get("useIframe") | 
| 
 
237707a6b74d
planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit a500f7ab2119cc5faaf80393bd87428389d06880-dirty
 
yating-l 
parents:  
diff
changeset
 | 
11 self.iframeHeight=args.get("iframeHeight") | 
| 
 
237707a6b74d
planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit a500f7ab2119cc5faaf80393bd87428389d06880-dirty
 
yating-l 
parents:  
diff
changeset
 | 
12 self.iframeWidth=args.get("iframeWidth") | 
| 
 
237707a6b74d
planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit a500f7ab2119cc5faaf80393bd87428389d06880-dirty
 
yating-l 
parents:  
diff
changeset
 | 
13 | 
| 
 
237707a6b74d
planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit a500f7ab2119cc5faaf80393bd87428389d06880-dirty
 
yating-l 
parents:  
diff
changeset
 | 
14 def setExtLink(self): | 
| 
 
237707a6b74d
planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit a500f7ab2119cc5faaf80393bd87428389d06880-dirty
 
yating-l 
parents:  
diff
changeset
 | 
15 return self.setDatabaseLink(self.database, self.seqType, self.useIframe, self.iframeHeight, self.iframeWidth) | 
| 
 
237707a6b74d
planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit a500f7ab2119cc5faaf80393bd87428389d06880-dirty
 
yating-l 
parents:  
diff
changeset
 | 
16 | 
| 
 
237707a6b74d
planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit a500f7ab2119cc5faaf80393bd87428389d06880-dirty
 
yating-l 
parents:  
diff
changeset
 | 
17 | 
| 
 
237707a6b74d
planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit a500f7ab2119cc5faaf80393bd87428389d06880-dirty
 
yating-l 
parents:  
diff
changeset
 | 
18 def setDatabaseLink(self, database, seqType=None, useIframe=None, iframeHeight=None, iframeWidth=None): | 
| 
 
237707a6b74d
planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit a500f7ab2119cc5faaf80393bd87428389d06880-dirty
 
yating-l 
parents:  
diff
changeset
 | 
19 database_settings = collections.OrderedDict() | 
| 
 
237707a6b74d
planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit a500f7ab2119cc5faaf80393bd87428389d06880-dirty
 
yating-l 
parents:  
diff
changeset
 | 
20 if "NCBI" in database: | 
| 
 
237707a6b74d
planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit a500f7ab2119cc5faaf80393bd87428389d06880-dirty
 
yating-l 
parents:  
diff
changeset
 | 
21 if not seqType: | 
| 
 
237707a6b74d
planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit a500f7ab2119cc5faaf80393bd87428389d06880-dirty
 
yating-l 
parents:  
diff
changeset
 | 
22 database_settings["url"] = "https://www.ncbi.nlm.nih.gov/gquery/?term=$$" | 
| 
 
237707a6b74d
planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit a500f7ab2119cc5faaf80393bd87428389d06880-dirty
 
yating-l 
parents:  
diff
changeset
 | 
23 elif seqType == 2: | 
| 
 
237707a6b74d
planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit a500f7ab2119cc5faaf80393bd87428389d06880-dirty
 
yating-l 
parents:  
diff
changeset
 | 
24 database_settings["url"] = "https://www.ncbi.nlm.nih.gov/protein/$$" | 
| 
 
237707a6b74d
planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit a500f7ab2119cc5faaf80393bd87428389d06880-dirty
 
yating-l 
parents:  
diff
changeset
 | 
25 elif seqType == 1: | 
| 
 
237707a6b74d
planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit a500f7ab2119cc5faaf80393bd87428389d06880-dirty
 
yating-l 
parents:  
diff
changeset
 | 
26 database_settings["url"] = "https://www.ncbi.nlm.nih.gov/nuccore/$$" | 
| 
 
237707a6b74d
planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit a500f7ab2119cc5faaf80393bd87428389d06880-dirty
 
yating-l 
parents:  
diff
changeset
 | 
27 else: | 
| 
 
237707a6b74d
planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit a500f7ab2119cc5faaf80393bd87428389d06880-dirty
 
yating-l 
parents:  
diff
changeset
 | 
28 raise Exception("Sequence Type {0} is not valid, should be either protein (seqType==2) or nucleotide (seqType==1). Stopping the application".format(seqType)) | 
| 
 
237707a6b74d
planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit a500f7ab2119cc5faaf80393bd87428389d06880-dirty
 
yating-l 
parents:  
diff
changeset
 | 
29 elif "UniProt" in database: | 
| 
 
237707a6b74d
planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit a500f7ab2119cc5faaf80393bd87428389d06880-dirty
 
yating-l 
parents:  
diff
changeset
 | 
30 database_settings["url"] = "http://www.uniprot.org/uniprot/$$" | 
| 
 
237707a6b74d
planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit a500f7ab2119cc5faaf80393bd87428389d06880-dirty
 
yating-l 
parents:  
diff
changeset
 | 
31 elif "FlyBase" in database: | 
| 
 
237707a6b74d
planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit a500f7ab2119cc5faaf80393bd87428389d06880-dirty
 
yating-l 
parents:  
diff
changeset
 | 
32 database_settings["url"] = "http://flybase.org/reports/$$" | 
| 
 
237707a6b74d
planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit a500f7ab2119cc5faaf80393bd87428389d06880-dirty
 
yating-l 
parents:  
diff
changeset
 | 
33 else: | 
| 
 
237707a6b74d
planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit a500f7ab2119cc5faaf80393bd87428389d06880-dirty
 
yating-l 
parents:  
diff
changeset
 | 
34 database_settings["url"] = "https://www.ncbi.nlm.nih.gov/gquery/?term=$$" | 
| 
 
237707a6b74d
planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit a500f7ab2119cc5faaf80393bd87428389d06880-dirty
 
yating-l 
parents:  
diff
changeset
 | 
35 database_settings["urlLabel"] = database + " Details:" | 
| 
 
237707a6b74d
planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit a500f7ab2119cc5faaf80393bd87428389d06880-dirty
 
yating-l 
parents:  
diff
changeset
 | 
36 if useIframe or useIframe is None: | 
| 
 
237707a6b74d
planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit a500f7ab2119cc5faaf80393bd87428389d06880-dirty
 
yating-l 
parents:  
diff
changeset
 | 
37 database_settings["iframeUrl"] = database_settings["url"] | 
| 
 
237707a6b74d
planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit a500f7ab2119cc5faaf80393bd87428389d06880-dirty
 
yating-l 
parents:  
diff
changeset
 | 
38 if not iframeHeight: | 
| 
 
237707a6b74d
planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit a500f7ab2119cc5faaf80393bd87428389d06880-dirty
 
yating-l 
parents:  
diff
changeset
 | 
39 iframeHeight = "600" | 
| 
 
237707a6b74d
planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit a500f7ab2119cc5faaf80393bd87428389d06880-dirty
 
yating-l 
parents:  
diff
changeset
 | 
40 if not iframeWidth: | 
| 
 
237707a6b74d
planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit a500f7ab2119cc5faaf80393bd87428389d06880-dirty
 
yating-l 
parents:  
diff
changeset
 | 
41 iframeWidth = "800" | 
| 
 
237707a6b74d
planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit a500f7ab2119cc5faaf80393bd87428389d06880-dirty
 
yating-l 
parents:  
diff
changeset
 | 
42 database_settings["iframeOptions"] = "height= %s width= %s" % (iframeHeight, iframeWidth) | 
| 
 
237707a6b74d
planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit a500f7ab2119cc5faaf80393bd87428389d06880-dirty
 
yating-l 
parents:  
diff
changeset
 | 
43 return database_settings | 
| 
 
237707a6b74d
planemo upload for repository https://github.com/Yating-L/jbrowse-archive-creator.git commit a500f7ab2119cc5faaf80393bd87428389d06880-dirty
 
yating-l 
parents:  
diff
changeset
 | 
44 | 
