private String getShortestNotAmbiguousConceptAccession(Set<ConceptAccession> co_accs) { String shortest_acc=" "; int length= 100000; for(ConceptAccession acc : co_accs) { if(!(acc.isAmbiguous()) && (acc.getAccession().trim().length() <= length)) { shortest_acc= acc.getAccession().trim(); length= shortest_acc.length(); } } return shortest_acc; }
private String getShortestNotAmbiguousConceptAccession(Set<ConceptAccession> co_accs) { String shortest_acc=" "; int length= 100000; for(ConceptAccession acc : co_accs) { if(!(acc.isAmbiguous()) && (acc.getAccession().trim().length() <= length)) { shortest_acc= acc.getAccession().trim(); length= shortest_acc.length(); } } return shortest_acc; }
private String getShortestNotAmbiguousConceptAccession(Set<ConceptAccession> co_accs) { String shortest_acc=" "; int length= 100000; for(ConceptAccession acc : co_accs) { // System.out.println("\t acc: "+ acc.getAccession().trim() +", isAmbiguous: "+ acc.isAmbiguous()); if(!(acc.isAmbiguous()) && (acc.getAccession().trim().length() <= length)) { shortest_acc= acc.getAccession().trim(); length= shortest_acc.length(); } } // System.out.println("\t shortest_acc: "+ shortest_acc); return shortest_acc; }
private String getShortestNotAmbiguousConceptAccession(Set<ConceptAccession> co_accs) { String shortest_acc=" "; int length= 100000; for(ConceptAccession acc : co_accs) { // System.out.println("\t acc: "+ acc.getAccession().trim() +", isAmbiguous: "+ acc.isAmbiguous()); if(!(acc.isAmbiguous()) && (acc.getAccession().trim().length() <= length)) { shortest_acc= acc.getAccession().trim(); length= shortest_acc.length(); } } // System.out.println("\t shortest_acc: "+ shortest_acc); return shortest_acc; }
/** * Generate metadata for Concept Accession. * @param accession * A Concept Accession (from the Ondex API). * @return JSONObject * JSONObject containing information about the Concept Accession. */ private JSONObject buildConceptAccession(ConceptAccession accession) { JSONObject accJson= new JSONObject(); accJson.put(JSONAttributeNames.ACCESSION, accession.getAccession()); // Element Of (return parent data source information). accJson.put(JSONAttributeNames.ELEMENTOF, buildDataSource(accession.getElementOf())); accJson.put(JSONAttributeNames.AMBIGUOUS, String.valueOf(accession.isAmbiguous())); return accJson; }
@Override public int compare(ConceptAccession o1, ConceptAccession o2) { // within same DataSource sort first by ambiguity, than by accession if (o1.getElementOf().equals(o2.getElementOf())) { if (!o1.isAmbiguous() && o2.isAmbiguous()) return -1; else if (o1.isAmbiguous() && !o2.isAmbiguous()) return 1; else return o1.getAccession().compareTo(o2.getAccession()); } else { // sort according to DataSource return o1.getElementOf().getId().compareTo(o2.getElementOf().getId()); } }
if (useAmbiguous || !ca.isAmbiguous()) {
clause.append(quote(ca.getAccession())); clause.append("',"); clause.append(ca.isAmbiguous()); clause.append(").\n"); writer.write(clause.toString());
if (acc.isAmbiguous()) b.append("<font color=\"red\">"); else
for (DataSource dataSource : cvs) { for (ConceptAccession ca : c.getConceptAccessions()) { if (ca.getElementOf().equals(dataSource) && !ca.isAmbiguous()) { accession = ca.getAccession(); break;
/** * Modify given concept accession * * @param editor * to propagate changes to element of upwards */ public ConceptAccessionPopup(ConceptAccessionTableCellEditor editor) { this.editor = editor; // editor panel BoxLayout layout = new BoxLayout(this, BoxLayout.LINE_AXIS); this.setLayout(layout); // selection of DataSource for element of this.add(new JLabel("Element of: ")); Object[] cvs = editor.graph.getMetaData().getDataSources().toArray(); Arrays.sort(cvs, new Util()); selection = new JComboBox(cvs); selection.setSelectedItem(editor.acc.getElementOf()); this.add(selection); // check box for ambiguity box = new JCheckBox("Is ambiguous concept accession?"); box.setSelected(editor.acc.isAmbiguous()); this.add(box); // button to close popup JButton close = new JButton("close"); close.addActionListener(this); this.add(close); }
accessions.put(new Pair<String>(ca.getAccession(), ca.getElementOf().getId()), ca.isAmbiguous());
String accession = null; for (ConceptAccession ca : c.getConceptAccessions()) { if (ca.getElementOf().equals(dataSource) && !ca.isAmbiguous()) { accession = ca.getAccession(); break;
/** * 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()); } }
@Override public Object getCellEditorValue() { // this is value returned by default editor String newAccession = super.getCellEditorValue().toString(); if (acc == null) { // construct new CA with defaults if (newAccession.trim().length() > 0) acc = concept.createConceptAccession(newAccession, unknown, true); } else { // existing CA check accession update if (!newAccession.equals(acc.getAccession())) { // delete old one ConceptAccession old = concept.getConceptAccession(acc.getAccession(), acc.getElementOf()); concept.deleteConceptAccession(acc.getAccession(), acc.getElementOf()); // keep additional settings and create non empty accession if (newAccession.trim().length() > 0) acc = concept.createConceptAccession(newAccession, old.getElementOf(), old.isAmbiguous()); else // clear existing concept accession from table acc = null; } } // return concept accession instead of string return acc; }
/** * Cast a given ConceptAccession into a BerkeleyConceptAccession. * * @param old * ConceptAccession * @return BerkeleyConceptAccession */ protected static BerkeleyConceptAccession convert(ConceptAccession old) { BerkeleyConceptAccession nu = new BerkeleyConceptAccession( old.getSID(), old.getOwnerId(), old.getAccession(), old.getElementOf(), old.isAmbiguous()); return nu; }
@Override public void actionPerformed(ActionEvent e) { this.setVisible(false); editor.acc.setAmbiguous(box.isSelected()); // has the DataSource of accession changed? DataSource dataSource = (DataSource) selection.getSelectedItem(); if (!editor.acc.getElementOf().equals(dataSource)) { // delete old one ConceptAccession old = editor.concept.getConceptAccession(editor.acc.getAccession(), editor.acc.getElementOf()); editor.concept.deleteConceptAccession(editor.acc.getAccession(), editor.acc.getElementOf()); // create one with new DataSource editor.acc = editor.concept.createConceptAccession(old.getAccession(), dataSource, old.isAmbiguous()); } } }
if (!ca.isAmbiguous()) {
boolean ambiguous = concept.getConceptAccession(oldAccession, accession_dataSource).isAmbiguous(); concept.deleteConceptAccession(oldAccession, accession_dataSource); concept.createConceptAccession(replacements.get(oldAccession), accession_dataSource, ambiguous);
/** * Writes a concept_accession tag in a xml stream writer. * * @param xmlw * xml stream to write in * @param ca * a ConceptAccession object * @throws XMLStreamException * if xml writing fails */ protected void buildConceptAccession(XMLStreamWriter2 xmlw, ConceptAccession ca) throws XMLStreamException { xmlw.writeStartElement(XMLTagNames.CONCEPTACCESSION); xmlw.writeStartElement(XMLTagNames.ACCESSION); // may have invalid chars xmlw.writeCharacters(stripInvalidXMLCharacters(ca.getAccession())); xmlw.writeEndElement(); xmlw.writeStartElement(XMLTagNames.ELEMENTOF); buildDataSourceContent(xmlw, ca.getElementOf(), nestedRule); xmlw.writeEndElement(); Boolean ambiguous = ca.isAmbiguous(); xmlw.writeStartElement(XMLTagNames.AMBIGUOUS); xmlw.writeCharacters(ambiguous.toString()); xmlw.writeEndElement(); xmlw.writeEndElement(); // end tag concept_accession }