public static <X extends Xref> Collection<X> getIdentityXrefs(AnnotatedObject<X,?> annotatedObject) { Collection<X> xrefs = new ArrayList<X>(); for (X xref : annotatedObject.getXrefs()) { CvXrefQualifier qualifier = xref.getCvXrefQualifier(); if (qualifier != null && CvObjectUtils.getPsiMiIdentityXref(qualifier).getPrimaryId().equals(CvXrefQualifier.IDENTITY_MI_REF)) { xrefs.add(xref); } } return xrefs; }
public UpdatedCrossReference(Xref ref, UpdateStatus status){ super(); if (ref != null){ this.database = ref.getCvDatabase() != null ? ref.getCvDatabase().getAc() : null; this.identifier = ref.getPrimaryId(); this.qualifier = ref.getCvXrefQualifier() != null ? ref.getCvXrefQualifier().getAc() : null; } else { this.database = null; this.identifier = null; this.qualifier = null; } this.status = status != null ? status : UpdateStatus.none; this.parent = null; }
public static <X extends Xref> X getIdentityXref(AnnotatedObject<X, ?> annotatedObject, String databaseMi) { for (X xref : annotatedObject.getXrefs()) { CvXrefQualifier qualifier = xref.getCvXrefQualifier(); CvDatabase database = xref.getCvDatabase(); String qualMi; String dbMi; if (qualifier != null && database != null && (qualMi = qualifier.getIdentifier()) != null && (dbMi = database.getIdentifier()) != null && qualMi.equals(CvXrefQualifier.IDENTITY_MI_REF) && dbMi.equals(databaseMi)) { return xref; } } return null; }
protected Xref getImexXref(Interaction interaction) { Collection<? extends Xref> refs; if (isCheckInitializedCollections()){ refs = IntactCore.ensureInitializedXrefs(interaction); } else { refs = interaction.getXrefs(); } for (Xref xref : refs) { if (CvDatabase.IMEX_MI_REF.equals(xref.getCvDatabase().getIdentifier()) && xref.getCvXrefQualifier() != null && CvXrefQualifier.IMEX_PRIMARY_MI_REF.equals(xref.getCvXrefQualifier().getIdentifier())) { return xref; } } return null; }
public static <X extends Xref> X getIdentityXref(AnnotatedObject<X, ?> annotatedObject, String databaseMi) { for (X xref : annotatedObject.getXrefs()) { CvXrefQualifier qualifier = xref.getCvXrefQualifier(); CvDatabase database = xref.getCvDatabase(); String qualMi; String dbMi; if (qualifier != null && database != null && (qualMi = qualifier.getIdentifier()) != null && (dbMi = database.getIdentifier()) != null && qualMi.equals(CvXrefQualifier.IDENTITY_MI_REF) && dbMi.equals(databaseMi)) { return xref; } } return null; }
public Set getPumedIds(Set experiments) { Set pubmeds = new HashSet(); for (Iterator iterator = experiments.iterator(); iterator.hasNext();) { Experiment experiment = (Experiment) iterator.next(); boolean found = false; for (Iterator iterator1 = experiment.getXrefs().iterator(); iterator1.hasNext() && !found;) { Xref xref = (Xref) iterator1.next(); if (getCvContext().getByMiRef(CvDatabase.class, CvDatabase.PUBMED_MI_REF).equals(xref.getCvDatabase()) && getCvContext().getByMiRef(CvXrefQualifier.class, CvXrefQualifier.PRIMARY_REFERENCE_MI_REF).equals(xref.getCvXrefQualifier())) { found = true; pubmeds.add(xref.getPrimaryId()); } } // xref if (found == false) { getOut().println("ERROR: " + experiment.getShortLabel() + " " + CvDatabase.PUBMED + " has no (" + CvXrefQualifier.PRIMARY_REFERENCE + ") assigned."); } } // experiments return pubmeds; }
@Override public void visitXref(Xref xref) { ps.println(indentation()+"Xref: "+xref.getPrimaryId()+" (db: "+xref.getCvDatabase().getShortLabel()+", qual: "+xref.getCvXrefQualifier().getShortLabel()+")"); }
@Override public void visitXref(Xref xref) { ps.println(indentation()+"Xref: "+xref.getPrimaryId()+" (db: "+xref.getCvDatabase().getShortLabel()+", qual: "+xref.getCvXrefQualifier().getShortLabel()+")"); }
private boolean hasAnIdentityCrossReference(CvObject cvObject){ if (cvObject.getXrefs() != null){ if (!cvObject.getXrefs().isEmpty()){ for (Xref ref : cvObject.getXrefs()){ CvXrefQualifier qualifier = ref.getCvXrefQualifier(); if (qualifier.getAc() != null){ if (qualifier.getAc().equals("MI:0356")){ return true; } } else { if (qualifier.getShortLabel().equals("identity") || qualifier.getFullName().equals("identical object")){ return true; } } } } } return false; }
public static <X extends Xref> X getIdentityXref(AnnotatedObject<X,?> annotatedObject, CvDatabase cvDatabase) { String dbMi = CvObjectUtils.getPsiMiIdentityXref(cvDatabase).getPrimaryId(); for (X xref : annotatedObject.getXrefs()) { CvXrefQualifier qualifier = xref.getCvXrefQualifier(); if (qualifier != null && CvObjectUtils.getPsiMiIdentityXref(qualifier).getPrimaryId().equals(CvXrefQualifier.IDENTITY_MI_REF) && CvObjectUtils.getPsiMiIdentityXref(qualifier).getPrimaryId().equals(dbMi)) { return xref; } } return null; }
private static <X extends Xref> void addXref(DbReference dbReference, AnnotatedObject<X, ?> annotatedObject, XrefConverter<X> xrefConverter) { X xref = xrefConverter.psiToIntact(dbReference); annotatedObject.addXref(xref); if (annotatedObject instanceof Institution) { xref.setOwner((Institution)annotatedObject); } else if (xref instanceof CvObjectXref && xref.getCvXrefQualifier() != null) { ((CvObjectXref)xref).prepareParentMi(); } }
@Override public void visitXref(Xref xref) { currentNode.setUserObject("Xref: "+xref.getPrimaryId()+" / Database="+ DebugUtil.cvObjectToSimpleString(xref.getCvDatabase())+ ", Qualifier="+DebugUtil.cvObjectToSimpleString(xref.getCvXrefQualifier())); }
@Override public void visitXref(Xref xref) { currentNode.setUserObject("Xref: "+xref.getPrimaryId()+" / Database="+ DebugUtil.cvObjectToSimpleString(xref.getCvDatabase())+ ", Qualifier="+DebugUtil.cvObjectToSimpleString(xref.getCvXrefQualifier())); }
public CrossReference createCrossReference(Xref xref, boolean withText) { CrossReference ref = null; String db = xref.getCvDatabase() != null ? xref.getCvDatabase().getShortLabel() : DATABASE_UNKNOWN; String id = xref.getPrimaryId(); if (id != null && db != null) { String secondaryId = (withText && xref.getSecondaryId() != null) ? xref.getSecondaryId() : null; String cvXrefQualifier = (withText && xref.getCvXrefQualifier() != null) ? xref.getCvXrefQualifier().getShortLabel() : null; if (secondaryId != null) { ref = new CrossReferenceImpl(db, id, secondaryId); } else if (cvXrefQualifier != null) { ref = new CrossReferenceImpl(db, id, cvXrefQualifier); } else { ref = new CrossReferenceImpl(db, id, null); } } return ref; } }
protected void fixPubmedReferenceAsIdentityToPrimaryRef(Xref xref) { if (CvDatabase.PUBMED_MI_REF.equals(xref.getCvDatabase().getIdentifier()) && CvXrefQualifier.IDENTITY_MI_REF.equals(xref.getCvXrefQualifier().getIdentifier())) { CvXrefQualifier primaryRef = CvObjectUtils.createCvObject(xref.getOwner(), CvXrefQualifier.class, CvXrefQualifier.PRIMARY_REFERENCE_MI_REF, CvXrefQualifier.PRIMARY_REFERENCE); xref.setCvXrefQualifier(primaryRef); final ConverterMessage converterMessage = new ConverterMessage(MessageLevel.WARN, "Incorrect cross refernece to Pubmed that had qualifier 'identity'. Changed to 'primary-reference", ConverterContext.getInstance().getLocation().getCurrentLocation()); converterMessage.setAutoFixed(true); ConverterContext.getInstance().getReport().getMessages().add(converterMessage); } }
private String getMiReference( CvObject cv ) { for ( Xref xref : cv.getXrefs() ) { if ( getPsi().equals( xref.getCvDatabase() ) ) { if ( getIdentity().equals( xref.getCvXrefQualifier() ) ) { return xref.getPrimaryId(); } } } return null; }
protected void traverseXref(Xref xref, IntactVisitor... visitors) { if (xref == null) return; for (IntactVisitor visitor : visitors) { visitor.visitXref(xref); } // check if this element has been traversed already, to avoid cyclic recursion if (recursionChecker.isAlreadyTraversed(xref)) { return; } traverse(xref.getCvXrefQualifier(), visitors); traverse(xref.getCvDatabase(), visitors); traverse(xref.getOwner(), visitors); }
protected void traverseXref(Xref xref, IntactVisitor... visitors) { if (xref == null) return; for (IntactVisitor visitor : visitors) { visitor.visitXref(xref); } // check if this element has been traversed already, to avoid cyclic recursion if (recursionChecker.isAlreadyTraversed(xref)) { return; } traverse(xref.getCvXrefQualifier(), visitors); traverse(xref.getCvDatabase(), visitors); traverse(xref.getOwner(), visitors); }
private Xref synchronizeXref( Xref xref, AnnotatedObject parent ) { if (xref.getAc() != null) { return IntactContext.getCurrentInstance().getDataContext().getDaoFactory() .getXrefDao().getByAc(xref.getAc()); } xref.setCvDatabase( synchronize( xref.getCvDatabase() ) ); xref.setCvXrefQualifier( synchronize( xref.getCvXrefQualifier() ) ); xref.setParent(parent); if (xref.getAc() == null && xref.getAc() != null) { annotatedObjectsToPersist.put(keyBuilder.keyForXref(xref), xref); } return xref; }
private Xref synchronizeXref( Xref xref, AnnotatedObject parent ) { if (xref.getAc() != null) { return IntactContext.getCurrentInstance().getDataContext().getDaoFactory() .getXrefDao().getByAc(xref.getAc()); } xref.setCvDatabase( synchronize( xref.getCvDatabase() ) ); xref.setCvXrefQualifier( synchronize( xref.getCvXrefQualifier() ) ); xref.setParent(parent); if (xref.getAc() == null && xref.getAc() != null) { annotatedObjectsToPersist.put(keyBuilder.keyForXref(xref), xref); } return xref; }