X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fgui%2FSequenceFetcher.java;h=dc5d31a937ff4b835e9472f7da2f4af7399d06da;hb=174230b4233d9ce80f94527768d2cd2f76da11ab;hp=75e69c260f2667f338e9e9b4b81d6e7cad04b2ea;hpb=f01e51c0c24a706409590174696ae72c4d573b7f;p=jalview.git diff --git a/src/jalview/gui/SequenceFetcher.java b/src/jalview/gui/SequenceFetcher.java index 75e69c2..dc5d31a 100755 --- a/src/jalview/gui/SequenceFetcher.java +++ b/src/jalview/gui/SequenceFetcher.java @@ -1,6 +1,6 @@ /* * Jalview - A Sequence Alignment Editor and Viewer - * Copyright (C) 2005 AM Waterhouse, J Procter, G Barton, M Clamp, S Searle + * Copyright (C) 2006 AM Waterhouse, J Procter, G Barton, M Clamp, S Searle * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -250,8 +250,8 @@ public class SequenceFetcher EBIFetchClient ebi = new EBIFetchClient(); File file = ebi.fetchDataAsFile("uniprot:" + id, "xml", null); - SequenceFeatureFetcher sff = new SequenceFeatureFetcher(); - Vector entries = sff.getUniprotEntries(file); + DBRefFetcher dbref = new DBRefFetcher(); + Vector entries = dbref.getUniprotEntries(file); if (entries != null) { @@ -301,6 +301,17 @@ public class SequenceFetcher onlyPdbEntries.addElement(pdb); } + Enumeration en2 = entry.getAccession().elements(); + while (en2.hasMoreElements()) + { + sequence[i].getDatasetSequence().addDBRef(new DBRefEntry(DBRefSource.UNIPROT, + "0", + en2.nextElement().toString())); + } + + + + sequence[i].getDatasetSequence().setPDBId(onlyPdbEntries); if (entry.getFeature() != null) { @@ -327,17 +338,18 @@ public class SequenceFetcher } EBIFetchClient ebi = new EBIFetchClient(); - String[] reply = ebi.fetchData("pdb:" + id, "pdb", "raw"); - if (reply == null) + String file = ebi.fetchDataAsFile("pdb:" + id, "pdb", "raw").getAbsolutePath(); + if (file == null) return null; try { - PDBfile pdbfile = new PDBfile(reply); + PDBfile pdbfile = new PDBfile(file, jalview.io.AppletFormatAdapter.FILE); for (int i = 0; i < pdbfile.chains.size(); i++) { if (chain == null || ( (PDBChain) pdbfile.chains.elementAt(i)).id. toUpperCase().equals(chain)) + result.append("\n>PDB|" + id + "|" + ( (PDBChain) pdbfile.chains.elementAt(i)).sequence. getName() + @@ -363,7 +375,7 @@ public class SequenceFetcher String format = new IdentifyFile().Identify(result, "Paste"); SequenceI[] sequences = null; - if (FormatAdapter.formats.contains(format)) + if (FormatAdapter.isValidFormat(format)) { sequences = null; try{ sequences = new FormatAdapter().readFile(result.toString(), "Paste",