import jalview.datamodel.AlignmentI;
import jalview.datamodel.ContactMatrixI;
import jalview.datamodel.DBRefEntry;
+import jalview.datamodel.GroupSet;
import jalview.datamodel.PDBEntry;
import jalview.datamodel.SequenceFeature;
import jalview.datamodel.SequenceI;
AlignmentI pdbAlignment, String retrievalUrl) throws IOException
{
File pae = fetchAlphaFoldPAE(id, retrievalUrl);
- addAlphaFoldPAE(pdbAlignment, pae, 0, null, false, false);
+ addAlphaFoldPAE(pdbAlignment, pae, 0, null, false, false, null);
}
public static void addAlphaFoldPAE(AlignmentI pdbAlignment, File pae,
- int index, String id, boolean isStruct, boolean isStructId)
+ int index, String id, boolean isStruct, boolean isStructId,
+ String label)
{
FileInputStream paeInput = null;
try
if (isStruct)
{
+ // ###### WRITE A TEST for this bit of the logic addAlphaFoldPAE with
+ // different params.
StructureSelectionManager ssm = StructureSelectionManager
.getStructureSelectionManager(Desktop.instance);
if (ssm != null)
{
String structFilename = isStructId ? ssm.findFileForPDBId(id) : id;
- addPAEToStructure(ssm, structFilename, pae);
+ addPAEToStructure(ssm, structFilename, pae, label);
}
}
try
{
if (!importPaeJSONAsContactMatrixToSequence(pdbAlignment, paeInput,
- index, id))
+ index, id, label))
{
Console.warn("Could not import contact matrix from '"
+ pae.getAbsolutePath() + "' to sequence.");
}
public static void addPAEToStructure(StructureSelectionManager ssm,
- String structFilename, File pae)
+ String structFilename, File pae, String label)
{
FileInputStream paeInput = null;
try
try
{
- if (!importPaeJSONAsContactMatrixToStructure(smArray, paeInput))
+ if (!importPaeJSONAsContactMatrixToStructure(smArray, paeInput,
+ label))
{
Console.warn("Could not import contact matrix from '"
+ pae.getAbsolutePath() + "' to structure.");
*/
public static boolean importPaeJSONAsContactMatrixToSequence(
AlignmentI pdbAlignment, InputStream pae_input, int index,
- String seqId) throws IOException, ParseException
+ String seqId, String label) throws IOException, ParseException
{
SequenceI sequence = null;
if (seqId == null)
return false;
}
return importPaeJSONAsContactMatrixToSequence(pdbAlignment, pae_input,
- sequence);
+ sequence, label);
}
public static boolean importPaeJSONAsContactMatrixToSequence(
AlignmentI pdbAlignment, InputStream pae_input,
- SequenceI sequence) throws IOException, ParseException
+ SequenceI sequence, String label)
+ throws IOException, ParseException
{
JSONObject paeDict = parseJSONtoPAEContactMatrix(pae_input);
if (paeDict == null)
(Map<String, Object>) paeDict);
AlignmentAnnotation cmannot = sequence.addContactList(matrix);
+ if (label != null)
+ cmannot.label = label;
pdbAlignment.addAnnotation(cmannot);
return true;
return paeDict;
}
+ // ###### TEST THIS
public static boolean importPaeJSONAsContactMatrixToStructure(
- StructureMapping[] smArray, InputStream paeInput)
+ StructureMapping[] smArray, InputStream paeInput, String label)
throws IOException, ParseException
{
boolean someDone = false;
for (StructureMapping sm : smArray)
{
boolean thisDone = importPaeJSONAsContactMatrixToStructure(sm,
- paeInput);
+ paeInput, label);
someDone |= thisDone;
}
return someDone;
}
public static boolean importPaeJSONAsContactMatrixToStructure(
- StructureMapping sm, InputStream paeInput)
+ StructureMapping sm, InputStream paeInput, String label)
throws IOException, ParseException
{
JSONObject pae_obj = parseJSONtoPAEContactMatrix(paeInput);
return false;
}
- ContactMatrixI matrix = new PAEContactMatrix(sm.getSequence(),
+ SequenceI seq = sm.getSequence();
+ ContactMatrixI matrix = new PAEContactMatrix(seq,
(Map<String, Object>) pae_obj);
-
AlignmentAnnotation cmannot = sm.getSequence().addContactList(matrix);
- sm.getSequence().addAlignmentAnnotation(cmannot);
-
+ /* this already happens in Sequence.addContactList()
+ seq.addAlignmentAnnotation(cmannot);
+ */
return true;
}