X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fws%2Fphyre2%2FPhyre2Client.java;h=80dc8411f852ed54e2ebe45e7ad88d7d4fa580a2;hb=19b5db52eb1285a22f8225f4baa914c2d7b15edd;hp=cea4a6491e6b8f67390eecf715f253aa4fb1dbfd;hpb=c03aaae74c93db1c8fa0e95258bfbccfe1d3106d;p=jalview.git diff --git a/src/jalview/ws/phyre2/Phyre2Client.java b/src/jalview/ws/phyre2/Phyre2Client.java index cea4a64..80dc841 100644 --- a/src/jalview/ws/phyre2/Phyre2Client.java +++ b/src/jalview/ws/phyre2/Phyre2Client.java @@ -16,7 +16,6 @@ import jalview.util.Comparison; import jalview.util.Format; import java.io.BufferedReader; -import java.io.File; import java.io.FileReader; import java.io.IOException; import java.io.PrintStream; @@ -31,10 +30,6 @@ public class Phyre2Client extends StructureMappingClient { private final static String NEWLINE = System.lineSeparator(); - public static final int UNASSIGNED = -1; - - private final static String PATH_SEPARATOR = File.separator; - private String fastaMappingFile; public Phyre2Client(StructureFile structureFile) @@ -105,24 +100,25 @@ public class Phyre2Client extends StructureMappingClient tStructureRes.setEnd(structureFile.getSeqsAsArray()[0].getEnd()); try { - int sequenceResLenght = tSequenceRes.getLength(); - int structureResLenght = tStructureRes.getLength(); - if (sequenceResLenght == structureResLenght) + int sequenceResLength = tSequenceRes.getLength(); + int structureResLength = tStructureRes.getLength(); + if (sequenceResLength == structureResLength) { int prevStructResNum = -1; - int alignmentLenght = sequenceResLenght + tSequenceRes.getStart(); - for (int x = 0; x < alignmentLenght; x++) + int alignmentLength = sequenceResLength + tSequenceRes.getStart(); + for (int x = 0; x < alignmentLength; x++) { int alignSeqResidueIndex = tSequenceRes.findIndex(x); int structResNum = tStructureRes .findPosition(alignSeqResidueIndex); int sequenceResNum = tSequenceRes .findPosition(alignSeqResidueIndex - 1); - boolean sameResNum = (structResNum == prevStructResNum); - // System.out.println(sequenceResNum + " : " - // + (sameResNum ? -1 : prevStructResNum)); - mapping.put(sequenceResNum, new int[] { - sameResNum ? -1 : prevStructResNum, -1 }); + if (structResNum != prevStructResNum) + { + // System.out.println(sequenceResNum + " : " + prevStructResNum); + mapping.put(sequenceResNum, new int[] { prevStructResNum, + StructureMapping.UNASSIGNED }); + } prevStructResNum = structResNum; } } @@ -131,6 +127,10 @@ public class Phyre2Client extends StructureMappingClient e.printStackTrace(); } + /* + * now populate atom positions for structure residues (and remove + * residue if atom position cannot be found) + */ try { populateAtomPositions(" ", mapping); @@ -173,6 +173,11 @@ public class Phyre2Client extends StructureMappingClient return fastaMappingFile; } + void setFastaMappingFile(String fastaMappingFile) + { + this.fastaMappingFile = fastaMappingFile; + } + @Override public StringBuffer getMappingOutput(MappingOutputModel mp) throws StructureMappingException