/** {@inheritDoc} */ @Override public void setMonomerName(String cMonomerName) { logger.debug("Setting monomer type to: ", cMonomerName); super.setMonomerName(cMonomerName); }
/** * Constructs a new Strand. */ public Strand() { super(); // Stand stuff monomers = new Hashtable<String, IMonomer>(); Monomer oMonomer = new Monomer(); oMonomer.setMonomerName(""); oMonomer.setMonomerType("UNKNOWN"); monomers.put("", oMonomer); strandName = ""; }
/** * Constructs a new Strand. */ public Strand() { super(); // Stand stuff monomers = new Hashtable<String, IMonomer>(); Monomer oMonomer = new Monomer(); oMonomer.setMonomerName(""); oMonomer.setMonomerType("UNKNOWN"); monomers.put("", oMonomer); strandName = ""; }
/** * A clone must deep clone everything, so that after the clone, operations * on the original do not modify the clone. * * @cdk.bug 2454890 */ @Test public void testPolymerClone() throws Exception { IPolymer oPolymer = new Polymer(); Assert.assertNotNull(oPolymer); Assert.assertEquals(0, oPolymer.getMonomerCount()); Polymer clone = (Polymer) oPolymer.clone(); Monomer monomer = new Monomer(); monomer.setMonomerName("TYR55"); oPolymer.addAtom(new Atom("C"), monomer); // changes should not occur in the clone Assert.assertEquals(0, clone.getMonomerCount()); Assert.assertEquals(0, clone.getMonomerNames().size()); // new clone should see the changes clone = (Polymer) oPolymer.clone(); Assert.assertEquals(1, clone.getMonomerCount()); Assert.assertEquals(1, clone.getMonomerNames().size()); Assert.assertEquals(1, clone.getAtomCount()); oPolymer.addAtom(new Atom("N")); clone = (Polymer) oPolymer.clone(); Assert.assertEquals(1, clone.getMonomerCount()); Assert.assertEquals(2, clone.getAtomCount()); }
/** * @cdk.bug 2454890 */ @Test public void testPolymerClone2() throws CloneNotSupportedException { IPolymer oPolymer = new Polymer(); Assert.assertNotNull(oPolymer); Assert.assertEquals(0, oPolymer.getMonomerCount()); Monomer monomer = new Monomer(); monomer.setMonomerName("TYR55"); IAtom atom = monomer.getBuilder().newInstance(IAtom.class, "C"); oPolymer.addAtom(atom, monomer); Polymer clone = (Polymer) oPolymer.clone(); IMonomer clonedMonomer = clone.getMonomer("TYR55"); Assert.assertNotSame(monomer, clonedMonomer); IAtom clonedAtom = clone.getAtom(0); Assert.assertNotSame(atom, clonedAtom); IAtom atomFromMonomer = clone.getMonomer("TYR55").getAtom(0); Assert.assertEquals("C", atomFromMonomer.getSymbol()); Assert.assertNotSame(atom, atomFromMonomer); Assert.assertSame(atomFromMonomer, clonedAtom); } }