/*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8)
- * Copyright (C) 2012 J Procter, AM Waterhouse, LM Lui, J Engelhardt, G Barton, M Clamp, S Searle
+ * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$)
+ * Copyright (C) $$Year-Rel$$ The Jalview Authors
*
* This file is part of Jalview.
*
* Jalview is free software: you can redistribute it and/or
* modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
*
* Jalview is distributed in the hope that it will be useful, but
* WITHOUT ANY WARRANTY; without even the implied warranty
* of MERCHANTABILITY or FITNESS FOR A PARTICULAR
* PURPOSE. See the GNU General Public License for more details.
*
- * You should have received a copy of the GNU General Public License along with Jalview. If not, see <http://www.gnu.org/licenses/>.
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview. If not, see <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
*/
package jalview.util;
+import static jalview.util.UrlConstants.SEQUENCE_ID;
+
import java.util.Vector;
public class UrlLink
*/
public UrlLink(String link)
{
- int sep = link.indexOf("|"), psqid = link.indexOf("$SEQUENCE_ID");
+ int sep = link.indexOf("|"), psqid = link.indexOf("$" + SEQUENCE_ID);
if (psqid > -1)
{
dynamic = true;
}
// Parse URL : Whole URL string first
url_prefix = link.substring(sep + 1, psqid);
- if (link.indexOf("$SEQUENCE_ID=/") == psqid
+ if (link.indexOf("$" + SEQUENCE_ID + "=/") == psqid
&& (p = link.indexOf("/=$", psqid + 14)) > psqid + 14)
{
// Extract Regex and suffix
{
regexReplace = null;
// verify format is really correct.
- if (link.indexOf("$SEQUENCE_ID$") == psqid)
+ if (link.indexOf("$" + SEQUENCE_ID + "$") == psqid)
{
url_suffix = link.substring(psqid + 13);
regexReplace = null;
if (ns == 0)
{
// take whole regex
- return new String[]
- { rg.stringMatched(),
+ return new String[] { rg.stringMatched(),
url_prefix + rg.stringMatched() + url_suffix };
} /*
* else if (ns==1) { // take only subgroup match return new String[]
}
// just return simple url substitution.
- return new String[]
- { idstring, url_prefix + idstring + url_suffix };
+ return new String[] { idstring, url_prefix + idstring + url_suffix };
}
else
{
- return new String[]
- { "", url_prefix };
+ return new String[] { "", url_prefix };
}
}
+ @Override
public String toString()
{
return label
+ "|"
+ url_prefix
- + (dynamic ? ("$SEQUENCE_ID" + ((regexReplace != null) ? "="
+ + (dynamic ? ("$" + SEQUENCE_ID + ((regexReplace != null) ? "="
+ regexReplace + "=$" : "$")) : "")
+ ((url_suffix == null) ? "" : url_suffix);
public static void main(String argv[])
{
- String[] links = new String[]
- {
+ String[] links = new String[] {
/*
* "AlinkT|Target|http://foo.foo.soo/",
* "myUrl1|http://$SEQUENCE_ID=/[0-9]+/=$.someserver.org/foo",
* "PF3|http://us.expasy.org/cgi-bin/niceprot.pl?$SEQUENCE_ID=/PFAM:(.+)/=$"
* , "NOTFER|http://notfer.org/$SEQUENCE_ID=/(?<!\\s)(.+)/=$",
*/
- "NESTED|http://nested/$SEQUENCE_ID=/^(?:Label:)?(?:(?:gi\\|(\\d+))|([^:]+))/=$/nested" };
- String[] idstrings = new String[]
- {
+ "NESTED|http://nested/$" + SEQUENCE_ID
+ + "=/^(?:Label:)?(?:(?:gi\\|(\\d+))|([^:]+))/=$/nested" };
+ String[] idstrings = new String[] {
/*
* //"LGUL_human", //"QWIQW_123123", "uniprot|why_do+_12313_foo",
* //"123123312", "123123 ABCDE foo", "PFAM:PF23943",