markCalcIds();
}
+ private static String calcIdPrefix = "JalviewPDB:";
+
+ public static boolean isCalcIdHandled(String calcId)
+ {
+ return calcId != null
+ && (calcId.startsWith(calcIdPrefix) && calcId.indexOf(
+ calcIdPrefix,
+ calcIdPrefix.length() + 1) > -1);
+ }
public static boolean isCalcIdForFile(String calcId, String pdbFile)
{
- return (calcId != null && calcId.startsWith("JalviewPDB:" + pdbFile
- + ":JalviewPDB:"));
+ return (calcId != null && calcId.startsWith(calcIdPrefix + pdbFile
+ + ":" + calcIdPrefix));
}
+
+ public static String relocateCalcId(String calcId,
+ Hashtable<String, String> alreadyLoadedPDB) throws Exception
+ {
+ int s = calcIdPrefix.length(), end = calcId.indexOf(calcIdPrefix, s);
+ String between = calcId.substring(s, end - 1);
+ return calcIdPrefix + alreadyLoadedPDB.get(between) + ":"
+ + calcId.substring(end);
+ }
+
private void markCalcIds()
{
for (SequenceI sq : seqs)