X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fio%2FDBRefFetcher.java;h=01e67cfc7bf4227b1ee10c67008ab88c1707410a;hb=0d6e36143a2d7471edb7ef386d0b79095e0cd63e;hp=6e4491059267415a949777d7c87eec82235ab77d;hpb=56e5bdc625697d50d7d3f422616f0f1b40ca2828;p=jalview.git diff --git a/src/jalview/io/DBRefFetcher.java b/src/jalview/io/DBRefFetcher.java index 6e44910..01e67cf 100644 --- a/src/jalview/io/DBRefFetcher.java +++ b/src/jalview/io/DBRefFetcher.java @@ -48,6 +48,7 @@ public class DBRefFetcher implements Runnable CutAndPasteTransfer output = new CutAndPasteTransfer(); StringBuffer sbuffer = new StringBuffer(); boolean uniprotFlag = false; + boolean running = false; public DBRefFetcher() {} @@ -91,9 +92,25 @@ public class DBRefFetcher implements Runnable unknownSequences = new ArrayList(); this.align = align; this.dataset = align.getDataset(); + } + public boolean fetchDBRefs(boolean waitTillFinished) + { Thread thread = new Thread(this); thread.start(); + running = true; + + if(waitTillFinished) + { + while(running) + { + try{ + Thread.sleep(500); + }catch(Exception ex){} + } + } + + return true; } /** @@ -103,6 +120,7 @@ public class DBRefFetcher implements Runnable { long startTime = System.currentTimeMillis(); af.setProgressBar("Fetching db refs", startTime); + running = true; try { @@ -117,13 +135,13 @@ public class DBRefFetcher implements Runnable seqIndex++, i++) { Sequence sequence = (Sequence) sequences.get(seqIndex); - Vector uprefs = jalview.util.DBRefUtils.selectRefs(sequence.getDBRef(), new String[] { + DBRefEntry [] uprefs = jalview.util.DBRefUtils.selectRefs(sequence.getDBRef(), new String[] { jalview.datamodel.DBRefSource.UNIPROT}); if (uprefs!=null) { // we know the id for this entry, so don't note its ID in the unknownSequences list - for (int j=0,k=uprefs.size(); j