X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2FMCview%2FPDBfile.java;h=fe2851a6510036e1f7a8426fdaae39308b191f8a;hb=5646f33d5e9dcbf30339abb53f2fca40d0f768b3;hp=18b83ae2dd6ba31beb621cee4b59911822c5e028;hpb=797df64fa2a0a30773d0f48f5494d4155e5a8be3;p=jalview.git diff --git a/src/MCview/PDBfile.java b/src/MCview/PDBfile.java index 18b83ae..fe2851a 100755 --- a/src/MCview/PDBfile.java +++ b/src/MCview/PDBfile.java @@ -22,8 +22,19 @@ import java.util.*; import java.awt.*; +import javax.xml.parsers.ParserConfigurationException; + +import org.xml.sax.SAXException; + +import fr.orsay.lri.varna.exceptions.ExceptionFileFormatOrSyntax; +import fr.orsay.lri.varna.exceptions.ExceptionLoadingFailed; +import fr.orsay.lri.varna.exceptions.ExceptionPermissionDenied; +import fr.orsay.lri.varna.exceptions.ExceptionUnmatchedClosingParentheses; + import jalview.datamodel.*; import jalview.io.FileParse; +import jalview.io.RnamlFile; +import jalview.ws.jws1.Annotate3D; public class PDBfile extends jalview.io.AlignFile { @@ -36,12 +47,12 @@ public class PDBfile extends jalview.io.AlignFile */ boolean VisibleChainAnnotation = false; - public PDBfile(String inFile, String inType) throws IOException + public PDBfile(String inFile, String inType) throws IOException, ExceptionFileFormatOrSyntax, ParserConfigurationException, SAXException, ExceptionPermissionDenied, ExceptionLoadingFailed, InterruptedException, ExceptionUnmatchedClosingParentheses { super(inFile, inType); } - public PDBfile(FileParse source) throws IOException + public PDBfile(FileParse source) throws IOException, ExceptionFileFormatOrSyntax, ParserConfigurationException, SAXException, ExceptionPermissionDenied, ExceptionLoadingFailed, InterruptedException, ExceptionUnmatchedClosingParentheses { super(source); } @@ -51,11 +62,11 @@ public class PDBfile extends jalview.io.AlignFile return null; } - public void parse() throws IOException + public void parse() throws IOException, ExceptionFileFormatOrSyntax, ParserConfigurationException, SAXException, ExceptionPermissionDenied, ExceptionLoadingFailed, InterruptedException { // TODO set the filename sensibly - try using data source name. id = safeName(getDataName()); - + chains = new Vector(); PDBChain tmpchain; @@ -170,11 +181,37 @@ public class PDBfile extends jalview.io.AlignFile // maintain reference to // dataset seqs.addElement(chainseq); + if(isRNA(chainseq)==true) + { + String path =inFile.getPath(); + System.out.println("this is a PDB format and RNA sequence"); + Annotate3D an3d = new Annotate3D(path); + System.out.println(id); + //BufferedWriter r = an3d.getReader(); + + // BufferedReader in = new BufferedReader(new FileReader("temp.rnaml")); + + //String str; + // while ((str = in.readLine()) != null) { + // System.out.println(str); + // System.out.println("toto"); + + // } + //String type = "File"; + //RnamlFile rnaml =new RnamlFile("temp.rnaml",type); + System.out.println("Create rnamfile object"); + //rnaml.parse("temp"); + //this.annotations =rnaml.getAnnot(); + + } + AlignmentAnnotation[] chainannot = chainseq.getAnnotation(); + if (chainannot != null) { for (int ai = 0; ai < chainannot.length; ai++) { + chainannot[ai].visible = VisibleChainAnnotation; annotations.addElement(chainannot[ai]); } @@ -263,4 +300,17 @@ public class PDBfile extends jalview.io.AlignFile 1.0f / (float) i, .4f, 1.0f)); } } + public boolean isRNA(SequenceI seqs) + { + for (int i=0;i