/** {@inheritDoc} */ @Override public Integer getCharge() { Integer charge = super.getCharge(); logger.debug("Getting charge: ", charge); return charge; }
/** * Clones this MolecularFormula object and its content. I should * integrate into ChemObject. * * @return The cloned object */ @Override public Object clone() throws CloneNotSupportedException { // /* it is not a super class of chemObject */ // MolecularFormula clone = (MolecularFormula) super.clone(); // // start from scratch // clone.removeAllIsotopes(); // // clone all isotopes // Iterator<IIsotope> iterIso = this.isotopes(); // while(iterIso.hasNext()){ // IIsotope isotope = iterIso.next(); // clone.addIsotope((IIsotope) isotope.clone(),getIsotopeCount(isotope)); // } MolecularFormula clone = new MolecularFormula(); for (IIsotope isotope : isotopes()) { clone.addIsotope((IIsotope) isotope.clone(), getIsotopeCount(isotope)); } clone.setCharge(getCharge()); return clone; }
/** * Clones this MolecularFormula object and its content. I should * integrate into ChemObject. * * @return The cloned object */ @Override public Object clone() throws CloneNotSupportedException { // /* it is not a super class of chemObject */ // MolecularFormula clone = (MolecularFormula) super.clone(); // // start from scratch // clone.removeAllIsotopes(); // // clone all isotopes // Iterator<IIsotope> iterIso = this.isotopes(); // while(iterIso.hasNext()){ // IIsotope isotope = iterIso.next(); // clone.addIsotope((IIsotope) isotope.clone(),getIsotopeCount(isotope)); // } MolecularFormula clone = new MolecularFormula(); for (IIsotope isotope : isotopes()) { clone.addIsotope((IIsotope) isotope.clone(), getIsotopeCount(isotope)); } clone.setCharge(getCharge()); return clone; }
@Test public void nullIsotopeLabels() { MolecularFormula formula = new MolecularFormula(); formula.addIsotope(builder.newInstance(IIsotope.class, "C"), 10); Assert.assertEquals("C<sub>10</sub>", MolecularFormulaManipulator.getHTML(formula, true, false)); formula.setCharge(1); Assert.assertEquals("C<sub>10</sub><sup>+</sup>", MolecularFormulaManipulator.getHTML(formula, true, true)); formula.setCharge(formula.getCharge() - 2); Assert.assertEquals("C<sub>10</sub><sup>–</sup>", MolecularFormulaManipulator.getHTML(formula, true, true)); }
@Test public void testGetHTML_IMolecularFormula_boolean_boolean() { MolecularFormula formula = new MolecularFormula(); formula.addIsotope(builder.newInstance(IIsotope.class, "C"), 10); Assert.assertEquals("C<sub>10</sub>", MolecularFormulaManipulator.getHTML(formula, true, false)); formula.setCharge(1); Assert.assertEquals("C<sub>10</sub><sup>+</sup>", MolecularFormulaManipulator.getHTML(formula, true, false)); formula.setCharge(formula.getCharge() - 2); Assert.assertEquals("C<sub>10</sub><sup>–</sup>", MolecularFormulaManipulator.getHTML(formula, true, false)); }