@Override public Set<ConceptAccession> getConceptAccessions() { return parent.getConceptAccessions(); }
private Map<DataSource, List<ConceptAccession>> getCVtoAccessions(ONDEXConcept c) { Map<DataSource, List<ConceptAccession>> cvMap = new HashMap<DataSource, List<ConceptAccession>>(); for (ConceptAccession acc : c.getConceptAccessions()) { // add all accessions by data source DataSource cv = acc.getElementOf(); if (!cvMap.containsKey(cv)) { List<ConceptAccession> ll = new LinkedList<ConceptAccession>(); cvMap.put(cv, ll); } cvMap.get(cv).add(acc); } return cvMap; }
public static Set<String> getAccessions(ONDEXConcept c, DataSource cv) { Set<String> set = new HashSet<String>(); for (ConceptAccession ac : c.getConceptAccessions()) { if (ac.getElementOf().equals(cv)) { set.add(ac.getAccession()); } } return set; }
private List<String> getAcc(ONDEXConcept c, DataSource elOf) { List<String> accessions = new ArrayList<String>(); for (ConceptAccession acc : c.getConceptAccessions()) { if (acc.getElementOf().equals(elOf)) { accessions.add(acc.getAccession()); } } return accessions; }
public static String getAccession(ONDEXConcept c, DataSource cv) { for (ConceptAccession ac : c.getConceptAccessions()) { if (ac.getElementOf().equals(cv)) { return ac.getAccession(); } } return null; }
/** * Gets the list of all accessions of a particular cv from a concpet * * @param c * - concept with accessions * @param type * - type of accesions to extract * @return */ public static final List<String> getAccessionsOfType(ONDEXConcept c, DataSource type) { List<String> accs = new LinkedList<String>(); for (ConceptAccession a : c.getConceptAccessions()) { if (a.getElementOf().equals(type)) { accs.add(a.getAccession()); } } return accs; }
public static void exportAccessions(ONDEXGraph graph, String... acc) { Set<DataSource> acs = new HashSet<DataSource>(); for (String a : acc) { DataSource dataSource = graph.getMetaData().getDataSource(a); if (dataSource != null) { acs.add(dataSource); } } try { DataOutputStream out = new DataOutputStream(new FileOutputStream("accessions.tab")); BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(out)); for (ONDEXConcept c : graph.getConcepts()) { for (ConceptAccession ca : c.getConceptAccessions()) { if (acs.contains(ca.getElementOf())) { bw.write(ca.getAccession() + "\n"); bw.flush(); } } } out.close(); } catch (Exception e) { e.printStackTrace(); } }
@Override protected void doAction() { // get meta data ONDEXGraph graph = viewer.getONDEXJUNGGraph(); DataSource dsSyngenta = graph.getMetaData().getDataSource("Syngenta"); // parse all accessions contained in graph Map<String, Set<ONDEXConcept>> accessions = new HashMap<String, Set<ONDEXConcept>>(); for (ONDEXConcept c : entities) { for (ConceptAccession ca : c.getConceptAccessions()) { if (ca.getElementOf().equals(dsSyngenta)) { if (!accessions.containsKey(ca.getAccession())) accessions.put(ca.getAccession(), new HashSet<ONDEXConcept>()); accessions.get(ca.getAccession()).add(c); } } } for (String accession : accessions.keySet()) { System.out.println(accession); } }
@Override public boolean accepts() { // get meta data ONDEXGraph graph = viewer.getONDEXJUNGGraph(); DataSource dsSyngenta = graph.getMetaData().getDataSource("Syngenta"); // look at all selected concepts for (ONDEXConcept c : entities) { for (ConceptAccession ca : c.getConceptAccessions()) { // at least one accession with source Syngenta if (ca.getElementOf().equals(dsSyngenta)) { return true; } } } return false; }
@Override public boolean accepts() { // get meta data ONDEXGraph graph = viewer.getONDEXJUNGGraph(); DataSource dsUNIPROTKB = graph.getMetaData().getDataSource("UNIPROTKB"); // look at all selected concepts for (ONDEXConcept c : entities) { for (ConceptAccession ca : c.getConceptAccessions()) { // at least one accession with source UNIPROT if (ca.getElementOf().equals(dsUNIPROTKB)) { return true; } } } return false; }
/** * Copies all accessions from old concept to new concept. * * @param oldC * old ONDEXConcept * @param newC * new ONDEXConcept */ private void copyAccessions(ONDEXConcept oldC, ONDEXConcept newC) { // iterate over all old accessions for (ConceptAccession acc : oldC.getConceptAccessions()) { // clone old accession on new concept newC.createConceptAccession(acc.getAccession(), acc.getElementOf(), acc.isAmbiguous()); } }
public static void correctUniprotAccession(OVTK2PropertiesAggregator viewer) { ONDEXGraph graph = viewer.getONDEXJUNGGraph(); ConceptClass prot = graph.getMetaData().getConceptClass("Protein"); DataSource nc_np = graph.getMetaData().getDataSource("NC_NP"); for (ONDEXConcept p : graph.getConceptsOfConceptClass(prot)) { List<String> newAcc = new ArrayList<String>(); for (ConceptAccession ca : p.getConceptAccessions()) { if (ca.getElementOf().equals(nc_np)) { if (ca.getAccession().contains(".")) { newAcc.add(ca.getAccession().split("\\.")[0]); } } } for (String str : newAcc) { p.createConceptAccession(str, nc_np, true); } } }
/** * setups the filters */ private FileFilter setupFilters(Set<ONDEXConcept> concepts, DataSource targetDataSource) { PDBFileNameFilter filter = new PDBFileNameFilter(); for (ONDEXConcept concept : concepts) { for (ConceptAccession accession : concept.getConceptAccessions()) { if (!accession.getElementOf().equals(targetDataSource)) continue; filter.addFileName(accession.getAccession()); } } ONDEXEventHandler.getEventHandlerForSID(graph.getSID()) .fireEventOccurred( new GeneralOutputEvent("found " + filter.fileNames.size() + " pdb references in current graph", Parser.class.toString())); return filter.fileNames.size() == 0 ? new EntDotZFilter() : filter; }
private void translateToFASTAFile(File f, Set<ONDEXConcept> concepts, ONDEXGraph graph) throws IOException, InvalidPluginArgumentException { FileOutputStream os = new FileOutputStream(f); OutputStreamWriter bw = new OutputStreamWriter(os); for (ONDEXConcept concept : concepts) { if (concept.getAttribute(atSource) == null || ((Boolean) super.args .getUniqueValue(ArgumentNames.IGNORE_PFAM_ANNOTATION_ARG) == false && this .hasPfamInformationAttached(concept .getConceptAccessions(), graph))) { // } else { String sequence = (String) concept.getAttribute(atSource).getValue(); // for each frame int i = 0; for (Frame frame : Frame.getAllFrames()) { DNASequence dna = new DNASequence(sequence); RNASequence rna = dna.getRNASequence(frame); ProteinSequence prot = rna.getProteinSequence(); String id = concept.getId() + ":" + Integer.toString(i + 1); bw.write(">"+id+"\n"); bw.write(prot.getSequenceAsString()+"\n"); i++; } } } os.close(); }
@Override public boolean accepts() { // get meta data ONDEXGraph graph = viewer.getONDEXJUNGGraph(); ConceptClass ccComp = graph.getMetaData().getConceptClass("Comp"); DataSource dsCHEMBL = graph.getMetaData().getDataSource("CHEMBL"); // look at all selected chemical compounds for (ONDEXConcept c : entities) { if (c.getOfType().equals(ccComp)) { for (ConceptAccession ca : c.getConceptAccessions()) { // at least one accession with source CHEMBL if (ca.getElementOf().equals(dsCHEMBL)) { return true; } } } } return false; }
@Override public boolean accepts() { // get meta data ONDEXGraph graph = viewer.getONDEXJUNGGraph(); ConceptClass ccTarget = graph.getMetaData().getConceptClass("Target"); DataSource dsTARGET = graph.getMetaData().getDataSource("CHEMBLTARGET"); // look at all selected targets for (ONDEXConcept c : entities) { if (c.getOfType().equals(ccTarget)) { for (ConceptAccession ca : c.getConceptAccessions()) { // at least one accession with source CHEMBL if (ca.getElementOf().equals(dsTARGET)) { return true; } } } } return false; }
public String getValue(ONDEXEntity cOrr) { if(ONDEXConcept.class.isAssignableFrom(cOrr.getClass())){ for(ConceptAccession ca : ((ONDEXConcept)cOrr).getConceptAccessions()){ if(ca.getElementOf().getId().equals(cv)){ if (useLinks) { AbstractONDEXValidator validator = ValidatorRegistry.validators.get("htmlaccessionlink"); Condition condition = new Condition(ca.getElementOf().getId(), ((ONDEXConcept)cOrr).getOfType().getId()); String url = (String) validator.validate(condition); if (url != null) { return "=HYPERLINK(\""+url+ca.getAccession() +"\",\""+ca.getAccession()+"\")"; } } return ca.getAccession(); } } return ""; } return null; }
/** * Adds a sequence to the fasta styled database * * @param b - BufferedWriter * @param concept - to store concept * @return if the entry was really added (could be false if the * <code>IGNORE_PFAM_ANNOTATION_ARG</code> argument was changed * @throws IOException */ private boolean addEntryToFastaDatabase(BufferedWriter b, ONDEXConcept concept, ONDEXGraph graph) throws IOException, InvalidPluginArgumentException { if (concept.getAttribute(atSource) == null || ((Boolean) super.args .getUniqueValue(ArgumentNames.IGNORE_PFAM_ANNOTATION_ARG) == false && this .hasPfamInformationAttached(concept .getConceptAccessions(), graph))) return false; Integer id = concept.getId(); String sequence = (String) concept.getAttribute(atSource).getValue(); b.write(">" + id + "\n" + sequence + "\n"); // writtenProteins.put(id, concept); return true; }
/** * creates a new index of go annotations in concept accessions for a given graph. * @param aog the graph. * @param taxid the taxid for which the annotation should be indexed. */ public void analyzeGraphAccByTaxon(ONDEXGraph aog, int taxid) { init(); AttributeName an_taxid = aog.getMetaData().getAttributeName("TAXID"); DataSource dataSource_go = aog.getMetaData().getDataSource("GO"); for(ONDEXConcept c : aog.getConceptsOfAttributeName(an_taxid)) { String curr_taxidStr = (String) c.getAttribute(an_taxid).getValue(); int curr_taxid = Integer.parseInt(curr_taxidStr); if (curr_taxid == taxid) { for (ConceptAccession acc : c.getConceptAccessions()) { if (acc.getElementOf().equals(dataSource_go)) { String cid = c.getId()+""; String goID = acc.getAccession(); int goID_int = Integer.parseInt(goID.split(":")[1]); register(cid, goID_int); } } } } }
/** * Copies all of the attributes from one concept to another (only if they do * not already exist at target) * * @param from * - concept to copy from * @param to * - concept to copy to * @throws AccessDeniedException * @throws NullValueException * @throws EmptyStringException */ public static void copyConceptAttributes(ONDEXConcept from, ONDEXConcept to) throws NullValueException, AccessDeniedException, EmptyStringException { for (EvidenceType et : from.getEvidence()) addNewEvidence(to, et); for (ConceptAccession ca : from.getConceptAccessions()) addNewAccession(to, ca); for (ConceptName cn : from.getConceptNames()) addNewName(to, cn); for (Attribute attribute : from.getAttributes()) addNewAttribute(to, attribute); if (from.getAnnotation() != null && to.getDescription() == null) to.setAnnotation(from.getAnnotation()); if (from.getDescription() != null && to.getDescription() == null) to.setDescription(from.getDescription()); }