Thread unsafe warning for PubChemFingerprinter.

Change-Id: Ia5e53a14789b0c4cc300c0569eb952acdf324527
Signed-off-by: Egon Willighagen <egonw@users.sourceforge.net>
Apply valence model after fixing hydrogen isotopes.

Signed-off-by: Egon Willighagen <egonw@users.sourceforge.net>
Use isotope factory to get the deuterium and tritium isotope values.

Signed-off-by: Egon Willighagen <egonw@users.sourceforge.net>
Correcting SMILES errors.

Signed-off-by: Egon Willighagen <egonw@users.sourceforge.net>
With the SMILES updated only 5 match.

Signed-off-by: Egon Willighagen <egonw@users.sourceforge.net>
Use parameterised generics.

Signed-off-by: Egon Willighagen <egonw@users.sourceforge.net>
Use atom iterator instead of indices.

Signed-off-by: Egon Willighagen <egonw@users.sourceforge.net>
An atom cannot be both a nitrogen and an oxygen.

Signed-off-by: Egon Willighagen <egonw@users.sourceforge.net>
Iterate over connected bonds.

Signed-off-by: Egon Willighagen <egonw@users.sourceforge.net>
An aromatic nitrogen which isn't connected to a pi bond cannot accept a hydrogen bond.

Signed-off-by: Egon Willighagen <egonw@users.sourceforge.net>
This test (which was passing) actually only has a single H bond acceptor. However we need to give it the a kekule structure - this test is for HBondAcceptor and not kekulisation so we provided the correct SMILES.

Signed-off-by: Egon Willighagen <egonw@users.sourceforge.net>
Ensure aromaticity is perceived.

Signed-off-by: Egon Willighagen <egonw@users.sourceforge.net>
Including the beam library in the SMILES module.

Signed-off-by: Egon Willighagen <egonw@users.sourceforge.net>
Conversion of the CDK object model to Beam.

Signed-off-by: Egon Willighagen <egonw@users.sourceforge.net>
Conversion from Beam to CDK objects.

Signed-off-by: Egon Willighagen <egonw@users.sourceforge.net>
Iodine only belongs to the aliphatic and not the aromatic subset - it can not be lower case and this test does not work as intended. A correct example is to have an aliphatic carbon and an aromatic oxygen which make the symbol of Cobalt (non organic subset atom).

Signed-off-by: Egon Willighagen <egonw@users.sourceforge.net>
Removing redundant bracket. Generally such an error indicates something deeper is wrong. This test was checking hydrogen counts though so we can safely remove it.

Signed-off-by: Egon Willighagen <egonw@users.sourceforge.net>
Noticeable performance improvement by avoiding invoking the factory each time. We cache a template atom/bond/container and then clone these when we need them. On large datasets provides a noticeable difference.

Signed-off-by: Egon Willighagen <egonw@users.sourceforge.net>
Missing license headers and removal of a duplicate line.

Signed-off-by: Egon Willighagen <egonw@users.sourceforge.net>
Only set aromatic flags if the atoms are aromatic AND the bond was implicit.

Signed-off-by: Egon Willighagen <egonw@users.sourceforge.net>