From: <eg...@us...> - 2007-07-30 07:51:49
|
Revision: 8639 http://cdk.svn.sourceforge.net/cdk/?rev=8639&view=rev Author: egonw Date: 2007-07-30 00:51:46 -0700 (Mon, 30 Jul 2007) Log Message: ----------- Fixed compile issues, as reported by Nightly. Modified Paths: -------------- trunk/cdk/src/org/openscience/cdk/test/tools/CDKHydrogenAdderTest.java trunk/cdk/src/org/openscience/cdk/tools/CDKHydrogenAdder.java trunk/cdk/src/org/openscience/cdk/tools/manipulator/AtomContainerManipulator.java Modified: trunk/cdk/src/org/openscience/cdk/test/tools/CDKHydrogenAdderTest.java =================================================================== --- trunk/cdk/src/org/openscience/cdk/test/tools/CDKHydrogenAdderTest.java 2007-07-30 04:37:03 UTC (rev 8638) +++ trunk/cdk/src/org/openscience/cdk/test/tools/CDKHydrogenAdderTest.java 2007-07-30 07:51:46 UTC (rev 8639) @@ -31,6 +31,7 @@ import org.openscience.cdk.interfaces.IMolecule; import org.openscience.cdk.nonotify.NNAtom; import org.openscience.cdk.nonotify.NNMolecule; +import org.openscience.cdk.nonotify.NoNotificationChemObjectBuilder; import org.openscience.cdk.test.CDKTestCase; import org.openscience.cdk.tools.CDKHydrogenAdder; import org.openscience.cdk.tools.manipulator.AtomTypeManipulator; @@ -47,7 +48,7 @@ public class CDKHydrogenAdderTest extends CDKTestCase { // private final static LoggingTool logger = new LoggingTool(CDKHydrogenAdderTest.class); - private final static CDKHydrogenAdder adder = new CDKHydrogenAdder(); + private final static CDKHydrogenAdder adder = CDKHydrogenAdder.getInstance(NoNotificationChemObjectBuilder.getInstance()); private final static CDKAtomTypeMatcher matcher = new CDKAtomTypeMatcher(); public CDKHydrogenAdderTest(String name) { Modified: trunk/cdk/src/org/openscience/cdk/tools/CDKHydrogenAdder.java =================================================================== --- trunk/cdk/src/org/openscience/cdk/tools/CDKHydrogenAdder.java 2007-07-30 04:37:03 UTC (rev 8638) +++ trunk/cdk/src/org/openscience/cdk/tools/CDKHydrogenAdder.java 2007-07-30 07:51:46 UTC (rev 8639) @@ -25,6 +25,8 @@ package org.openscience.cdk.tools; import java.util.Iterator; +import java.util.Map; +import java.util.Hashtable; import org.openscience.cdk.CDKConstants; import org.openscience.cdk.config.AtomTypeFactory; @@ -32,7 +34,7 @@ import org.openscience.cdk.interfaces.IAtom; import org.openscience.cdk.interfaces.IAtomContainer; import org.openscience.cdk.interfaces.IAtomType; -import org.openscience.cdk.nonotify.NoNotificationChemObjectBuilder; +import org.openscience.cdk.interfaces.IChemObjectBuilder; /** * Assumes CDK atom types to be detected and adds missing hydrogens based on the @@ -43,13 +45,23 @@ */ public class CDKHydrogenAdder { - private static AtomTypeFactory atomTypeList; - private final static String ATOM_TYPE_LIST = "org/openscience/cdk/config/data/cdk_atomtypes.xml"; - - static { - atomTypeList = AtomTypeFactory.getInstance(ATOM_TYPE_LIST, NoNotificationChemObjectBuilder.getInstance()); - } - + private AtomTypeFactory atomTypeList; + private final static String ATOM_TYPE_LIST = "org/openscience/cdk/config/data/cdk_atomtypes.xml"; + + private static Map<String,CDKHydrogenAdder> tables = new Hashtable<String,CDKHydrogenAdder>(3); + + private CDKHydrogenAdder(IChemObjectBuilder builder) { + if (atomTypeList == null) + atomTypeList = AtomTypeFactory.getInstance(ATOM_TYPE_LIST, builder); + } + + public static CDKHydrogenAdder getInstance(IChemObjectBuilder builder) { + if (!tables.containsKey(builder.getClass().getName())) + tables.put(builder.getClass().getName(), new CDKHydrogenAdder(builder)); + return tables.get(builder.getClass().getName()); + } + + /** * Sets implicit hydrogen counts for all atoms in the given IAtomContainer. * Modified: trunk/cdk/src/org/openscience/cdk/tools/manipulator/AtomContainerManipulator.java =================================================================== --- trunk/cdk/src/org/openscience/cdk/tools/manipulator/AtomContainerManipulator.java 2007-07-30 04:37:03 UTC (rev 8638) +++ trunk/cdk/src/org/openscience/cdk/tools/manipulator/AtomContainerManipulator.java 2007-07-30 07:51:46 UTC (rev 8639) @@ -28,7 +28,6 @@ package org.openscience.cdk.tools.manipulator; import org.openscience.cdk.CDKConstants; -import org.openscience.cdk.config.Elements; import org.openscience.cdk.exception.CDKException; import org.openscience.cdk.interfaces.*; @@ -163,7 +162,7 @@ Iterator connectedAtoms = atomContainer.getConnectedAtomsList(atom).iterator(); while (connectedAtoms.hasNext()) { IAtom connectedAtom = (IAtom)connectedAtoms.next(); - if (connectedAtom.getSymbol().equals(Elements.HYDROGEN.getSymbol())) + if (connectedAtom.getSymbol().equals("H")) hCount++; } return hCount; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |