@Override
  protected void createObjects() throws IOException {
    ChemkinMechanism mechanism = parse();

    MechanismMoleculesToDatabaseTransaction moltransaction =
        (MechanismMoleculesToDatabaseTransaction) getInputSource(moleculesS);
    moleculeNamesTable = moltransaction.getMoleculeMap();
    ChemkinReactionList reactionList = mechanism.getReactionList();

    ArrayList<DatabaseObject> chemkinReactionList = new ArrayList<DatabaseObject>();
    ArrayList<DatabaseObject> coefficients = new ArrayList<DatabaseObject>();
    ArrayList<DatabaseObject> photoList = new ArrayList<DatabaseObject>();

    for (ChemkinReaction reaction : reactionList) {
      String rxnkeyword = getKeyword(reaction);

      ChemkinReactionData rxndata = create(rxnkeyword, reaction, coefficients);
      if (reaction.isHvLight()) {
        PhotoChemicalReaction photo =
            new PhotoChemicalReaction(keyword, rxnkeyword, reaction.isHvLightAsReactant());
        photoList.add(photo);
      }
      chemkinReactionList.add(rxndata);
    }

    StorageAndRetrievalUtilities.storeDatabaseObjects(chemkinReactionList);
    StorageAndRetrievalUtilities.storeDatabaseObjects(coefficients);
    StorageAndRetrievalUtilities.storeDatabaseObjects(photoList);
    rxntransaction.setReactionCount(chemkinReactionList.size());
  }