{
return cdoc.getObject( (VorbaId) jv2vobj.get(jvobj));
}
+ if (Cache.log.isDebugEnabled())
+ {
+ Cache.log.debug("Returning null VorbaID binding for jalview object "+jvobj);
+ }
return null;
}
if (id == null)
{
id = cdoc.registerObject(vobj);
- if (id == null || vobj.getVorbaId() == null)
+ if (id == null || vobj.getVorbaId() == null || cdoc.getObject(id)!=vobj)
{
Cache.log.error("Failed to get id for " +
(vobj.isRegisterable() ? "registerable" :
/* Cache.log.error("Attempt to make conflicting object binding! "+vobj+" id " +vobj.getVorbaId()+" already bound to "+getvObj2jv(vobj)+" and "+jvobj+" already bound to "+getjv2vObj(jvobj),new Exception("Excessive call to bindjvvobj"));
}*/
// we just update the hash's regardless!
+ Cache.log.debug("Binding "+vobj.getVorbaId()+" to "+jvobj);
vobj2jv.put(vobj.getVorbaId(), jvobj);
// JBPNote - better implementing a hybrid invertible hash.
jv2vobj.put(jvobj, vobj.getVorbaId());
alseq.setName(jal.getSequenceAt(i).getName());
alseq.setStart(jal.getSequenceAt(i).getStart());
alseq.setEnd(jal.getSequenceAt(i).getEnd());
+ if (getjv2vObj(jal.getSequenceAt(i).getDatasetSequence())==null)
+ {
+ Cache.log.warn("Serious. Unbound dataset sequence in alignment: "+jal.getSequenceAt(i).getDatasetSequence());
+ }
alseq.setRefid(getjv2vObj(jal.getSequenceAt(i).getDatasetSequence()));
alignment.addAlignmentSequence(alseq);
bindjvvobj(jal.getSequenceAt(i), alseq);