Merge branch 'master' of https://source.jalview.org/git/jalviewjs.git
[jalviewjs.git] / site / j2s / jalview / util / DBRefUtils.js
1 Clazz.declarePackage ("jalview.util");
2 Clazz.load (["java.util.HashMap"], "jalview.util.DBRefUtils", ["jalview.datamodel.DBRefEntry", "$.DBRefSource", "$.PDBEntry", "jalview.jsdev.RegExp", "java.util.ArrayList", "$.Hashtable"], function () {
3 c$ = Clazz.declareType (jalview.util, "DBRefUtils");
4 c$.selectRefs = Clazz.defineMethod (c$, "selectRefs", 
5 function (dbrefs, sources) {
6 if (dbrefs == null) {
7 return null;
8 }if (sources == null) {
9 return dbrefs;
10 }var srcs =  new java.util.HashMap ();
11 var res =  new java.util.ArrayList ();
12 for (var i = 0; i < sources.length; i++) {
13 srcs.put ( String.instantialize (sources[i]),  new Integer (i));
14 }
15 for (var i = 0, j = dbrefs.length; i < j; i++) {
16 if (srcs.containsKey (dbrefs[i].getSource ())) {
17 res.add (dbrefs[i]);
18 }}
19 if (res.size () > 0) {
20 var reply =  new Array (res.size ());
21 return res.toArray (reply);
22 }res = null;
23 return null;
24 }, "~A,~A");
25 c$.isDasCoordinateSystem = Clazz.defineMethod (c$, "isDasCoordinateSystem", 
26 function (string, dBRefEntry) {
27 if (string == null || dBRefEntry == null) {
28 return false;
29 }var coordsys = jalview.util.DBRefUtils.dasCoordinateSystemsLookup.get (string.toLowerCase ());
30 return coordsys == null ? false : coordsys.equals (dBRefEntry.getSource ());
31 }, "~S,jalview.datamodel.DBRefEntry");
32 c$.getCanonicalName = Clazz.defineMethod (c$, "getCanonicalName", 
33 function (source) {
34 if (source == null) {
35 return null;
36 }var canonical = jalview.util.DBRefUtils.canonicalSourceNameLookup.get (source.toLowerCase ());
37 return canonical == null ? source : canonical;
38 }, "~S");
39 c$.searchRefs = Clazz.defineMethod (c$, "searchRefs", 
40 function (ref, entry) {
41 return jalview.util.DBRefUtils.searchRefs (ref, entry, jalview.util.DBRefUtils.matchDbAndIdAndEitherMapOrEquivalentMapList);
42 }, "~A,jalview.datamodel.DBRefEntry");
43 c$.searchRefs = Clazz.defineMethod (c$, "searchRefs", 
44 function (refs, entry, comparator) {
45 if (refs == null || entry == null) {
46 return null;
47 }var rfs =  new java.util.ArrayList ();
48 for (var i = 0; i < refs.length; i++) {
49 if (comparator.matches (entry, refs[i])) {
50 rfs.add (refs[i]);
51 }}
52 return rfs.size () == 0 ? null : rfs.toArray ( new Array (rfs.size ()));
53 }, "~A,jalview.datamodel.DBRefEntry,jalview.util.DBRefUtils.DbRefComp");
54 c$.parseToDbRef = Clazz.defineMethod (c$, "parseToDbRef", 
55 function (seq, dbname, version, acn) {
56 var ref = null;
57 if (dbname != null) {
58 var locsrc = jalview.util.DBRefUtils.getCanonicalName (dbname);
59 if (locsrc.equals (jalview.datamodel.DBRefSource.PDB)) {
60 var r = jalview.jsdev.RegExp.newRegex (["([0-9][0-9A-Za-z]{3})\\s*(.?)\\s*;\\s*([0-9]+)-([0-9]+)"]);
61 if (r.search (acn.trim ())) {
62 var pdbid = r.stringMatchedI (1);
63 var chaincode = r.stringMatchedI (2);
64 if (chaincode == null) {
65 chaincode = " ";
66 }if (chaincode.equals (" ")) {
67 chaincode = "_";
68 }ref =  new jalview.datamodel.DBRefEntry (locsrc, version, pdbid + chaincode);
69 var pdbr =  new jalview.datamodel.PDBEntry ();
70 pdbr.setId (pdbid);
71 pdbr.setType (jalview.datamodel.PDBEntry.Type.PDB);
72 pdbr.setProperty ( new java.util.Hashtable ());
73 pdbr.setChainCode (chaincode);
74 seq.addPDBId (pdbr);
75 } else {
76 System.err.println ("Malformed PDB DR line:" + acn);
77 }} else {
78 ref =  new jalview.datamodel.DBRefEntry (locsrc, version, acn);
79 }}if (ref != null) {
80 seq.addDBRef (ref);
81 }return ref;
82 }, "jalview.datamodel.SequenceI,~S,~S,~S");
83 c$.$DBRefUtils$1$ = function () {
84 Clazz.pu$h(self.c$);
85 c$ = Clazz.declareAnonymous (jalview.util, "DBRefUtils$1", null, jalview.util.DBRefUtils.DbRefComp);
86 Clazz.defineMethod (c$, "matches", 
87 function (refa, refb) {
88 if (refa.getSource () == null || refb.getSource ().equals (refa.getSource ())) {
89 if (refa.getVersion () == null || refb.getVersion ().equals (refa.getVersion ())) {
90 if (refa.getAccessionId () == null || refb.getAccessionId ().equals (refa.getAccessionId ())) {
91 if (refa.getMap () == null || (refb.getMap () != null && refb.getMap ().equals (refa.getMap ()))) {
92 return true;
93 }}}}return false;
94 }, "jalview.datamodel.DBRefEntry,jalview.datamodel.DBRefEntry");
95 c$ = Clazz.p0p ();
96 };
97 c$.$DBRefUtils$2$ = function () {
98 Clazz.pu$h(self.c$);
99 c$ = Clazz.declareAnonymous (jalview.util, "DBRefUtils$2", null, jalview.util.DBRefUtils.DbRefComp);
100 Clazz.defineMethod (c$, "matches", 
101 function (refa, refb) {
102 if ((refa.getSource () == null || refb.getSource () == null) || refb.getSource ().equals (refa.getSource ())) {
103 if ((refa.getVersion () == null || refb.getVersion () == null) || refb.getVersion ().equals (refa.getVersion ())) {
104 if ((refa.getAccessionId () == null || refb.getAccessionId () == null) || refb.getAccessionId ().equals (refa.getAccessionId ())) {
105 if ((refa.getMap () == null || refb.getMap () == null) || (refb.getMap () != null && refb.getMap ().equals (refa.getMap ()))) {
106 return true;
107 }}}}return false;
108 }, "jalview.datamodel.DBRefEntry,jalview.datamodel.DBRefEntry");
109 c$ = Clazz.p0p ();
110 };
111 c$.$DBRefUtils$3$ = function () {
112 Clazz.pu$h(self.c$);
113 c$ = Clazz.declareAnonymous (jalview.util, "DBRefUtils$3", null, jalview.util.DBRefUtils.DbRefComp);
114 Clazz.defineMethod (c$, "matches", 
115 function (refa, refb) {
116 if (refa.getSource () != null && refb.getSource () != null && refb.getSource ().equals (refa.getSource ())) {
117 if (refa.getAccessionId () != null && refb.getAccessionId () != null || refb.getAccessionId ().equals (refa.getAccessionId ())) {
118 if ((refa.getMap () == null || refb.getMap () == null) || (refa.getMap () != null && refb.getMap () != null && refb.getMap ().equals (refa.getMap ()))) {
119 return true;
120 }}}return false;
121 }, "jalview.datamodel.DBRefEntry,jalview.datamodel.DBRefEntry");
122 c$ = Clazz.p0p ();
123 };
124 c$.$DBRefUtils$4$ = function () {
125 Clazz.pu$h(self.c$);
126 c$ = Clazz.declareAnonymous (jalview.util, "DBRefUtils$4", null, jalview.util.DBRefUtils.DbRefComp);
127 Clazz.defineMethod (c$, "matches", 
128 function (refa, refb) {
129 if (refa.getSource () != null && refb.getSource () != null && refb.getSource ().equals (refa.getSource ())) {
130 if (refa.getAccessionId () != null && refb.getAccessionId () != null || refb.getAccessionId ().equals (refa.getAccessionId ())) {
131 if ((refa.getMap () == null && refb.getMap () == null) || (refa.getMap () != null && refb.getMap () != null)) {
132 if ((refb.getMap ().getMap () == null && refa.getMap ().getMap () == null) || (refb.getMap ().getMap () != null && refa.getMap ().getMap () != null && refb.getMap ().getMap ().getInverse ().equals (refa.getMap ().getMap ()))) {
133 return true;
134 }}}}return false;
135 }, "jalview.datamodel.DBRefEntry,jalview.datamodel.DBRefEntry");
136 c$ = Clazz.p0p ();
137 };
138 c$.$DBRefUtils$5$ = function () {
139 Clazz.pu$h(self.c$);
140 c$ = Clazz.declareAnonymous (jalview.util, "DBRefUtils$5", null, jalview.util.DBRefUtils.DbRefComp);
141 Clazz.defineMethod (c$, "matches", 
142 function (refa, refb) {
143 if (refa.getSource () != null && refb.getSource () != null && refb.getSource ().equals (refa.getSource ())) {
144 if (refa.getAccessionId () != null && refb.getAccessionId () != null || refb.getAccessionId ().equals (refa.getAccessionId ())) {
145 if (refa.getMap () == null && refb.getMap () == null) {
146 return true;
147 }if (refa.getMap () != null && refb.getMap () != null && ((refb.getMap ().getMap () == null && refa.getMap ().getMap () == null) || (refb.getMap ().getMap () != null && refa.getMap ().getMap () != null && refb.getMap ().getMap ().equals (refa.getMap ().getMap ())))) {
148 return true;
149 }}}return false;
150 }, "jalview.datamodel.DBRefEntry,jalview.datamodel.DBRefEntry");
151 c$ = Clazz.p0p ();
152 };
153 c$.$DBRefUtils$6$ = function () {
154 Clazz.pu$h(self.c$);
155 c$ = Clazz.declareAnonymous (jalview.util, "DBRefUtils$6", null, jalview.util.DBRefUtils.DbRefComp);
156 Clazz.defineMethod (c$, "matches", 
157 function (refa, refb) {
158 if (refa.getSource () != null && refb.getSource () != null && refb.getSource ().equals (refa.getSource ())) {
159 if (refa.getAccessionId () != null && refb.getAccessionId () != null && refb.getAccessionId ().equals (refa.getAccessionId ())) {
160 if (refa.getMap () == null || refb.getMap () == null) {
161 return true;
162 }if ((refa.getMap () != null && refb.getMap () != null) && (refb.getMap ().getMap () == null && refa.getMap ().getMap () == null) || (refb.getMap ().getMap () != null && refa.getMap ().getMap () != null && (refb.getMap ().getMap ().equals (refa.getMap ().getMap ())))) {
163 return true;
164 }}}return false;
165 }, "jalview.datamodel.DBRefEntry,jalview.datamodel.DBRefEntry");
166 c$ = Clazz.p0p ();
167 };
168 Clazz.declareInterface (jalview.util.DBRefUtils, "DbRefComp");
169 c$.canonicalSourceNameLookup = c$.prototype.canonicalSourceNameLookup =  new java.util.HashMap ();
170 c$.dasCoordinateSystemsLookup = c$.prototype.dasCoordinateSystemsLookup =  new java.util.HashMap ();
171 {
172 jalview.util.DBRefUtils.canonicalSourceNameLookup.put ("uniprotkb/swiss-prot", jalview.datamodel.DBRefSource.UNIPROT);
173 jalview.util.DBRefUtils.canonicalSourceNameLookup.put ("uniprotkb/trembl", jalview.datamodel.DBRefSource.UNIPROT);
174 jalview.util.DBRefUtils.canonicalSourceNameLookup.put ("pdb", jalview.datamodel.DBRefSource.PDB);
175 jalview.util.DBRefUtils.dasCoordinateSystemsLookup.put ("pdbresnum", jalview.datamodel.DBRefSource.PDB);
176 jalview.util.DBRefUtils.dasCoordinateSystemsLookup.put ("uniprot", jalview.datamodel.DBRefSource.UNIPROT);
177 jalview.util.DBRefUtils.dasCoordinateSystemsLookup.put ("embl", jalview.datamodel.DBRefSource.EMBL);
178 }c$.matchNonNullonA = c$.prototype.matchNonNullonA = ((Clazz.isClassDefined ("jalview.util.DBRefUtils$1") ? 0 : jalview.util.DBRefUtils.$DBRefUtils$1$ ()), Clazz.innerTypeInstance (jalview.util.DBRefUtils$1, this, null));
179 c$.matchEitherNonNull = c$.prototype.matchEitherNonNull = ((Clazz.isClassDefined ("jalview.util.DBRefUtils$2") ? 0 : jalview.util.DBRefUtils.$DBRefUtils$2$ ()), Clazz.innerTypeInstance (jalview.util.DBRefUtils$2, this, null));
180 c$.matchDbAndIdAndEitherMap = c$.prototype.matchDbAndIdAndEitherMap = ((Clazz.isClassDefined ("jalview.util.DBRefUtils$3") ? 0 : jalview.util.DBRefUtils.$DBRefUtils$3$ ()), Clazz.innerTypeInstance (jalview.util.DBRefUtils$3, this, null));
181 c$.matchDbAndIdAndComplementaryMapList = c$.prototype.matchDbAndIdAndComplementaryMapList = ((Clazz.isClassDefined ("jalview.util.DBRefUtils$4") ? 0 : jalview.util.DBRefUtils.$DBRefUtils$4$ ()), Clazz.innerTypeInstance (jalview.util.DBRefUtils$4, this, null));
182 c$.matchDbAndIdAndEquivalentMapList = c$.prototype.matchDbAndIdAndEquivalentMapList = ((Clazz.isClassDefined ("jalview.util.DBRefUtils$5") ? 0 : jalview.util.DBRefUtils.$DBRefUtils$5$ ()), Clazz.innerTypeInstance (jalview.util.DBRefUtils$5, this, null));
183 c$.matchDbAndIdAndEitherMapOrEquivalentMapList = c$.prototype.matchDbAndIdAndEitherMapOrEquivalentMapList = ((Clazz.isClassDefined ("jalview.util.DBRefUtils$6") ? 0 : jalview.util.DBRefUtils.$DBRefUtils$6$ ()), Clazz.innerTypeInstance (jalview.util.DBRefUtils$6, this, null));
184 });