public override void StartDocument() { ChemFile = new ChemFile(); chemSequence = new ChemSequence(); chemModel = new ChemModel(); setOfMolecules = new ChemObjectSet <IAtomContainer>(); }
/// <summary> Read a Reaction from a file in MACiE RDF format. /// /// </summary> /// <returns> The Reaction that was read from the MDL file. /// </returns> private IChemObject readReactions(bool selectEntry) { ChemSequence entries = new ChemSequence(); currentEntry = null; int entryCounter = 0; currentReactionStepSet = null; while (input.Peek() != -1) { //UPGRADE_WARNING: Method 'java.io.LineNumberReader.readLine' was converted to 'System.IO.StreamReader.ReadLine' which may throw an exception. "ms-help://MS.VSCC.v80/dv_commoner/local/redirect.htm?index='!DefaultContextWindowIndex'&keyword='jlca1101'" System.String line = input.ReadLine(); if (line.StartsWith("$RDFILE")) { entries = new ChemSequence(); } else if (line.StartsWith("$DATM")) { entries.setProperty(CreationDate, line.Substring(7)); } else if (line.StartsWith("$RIREG")) { // new entry, store previous entry if any if (currentEntry != null) { // store previous entry currentEntry.SetOfReactions = currentReactionStepSet; createNiceMACiETitle(currentEntry); entries.addChemModel(currentEntry); fireFrameRead(); if (selectEntry && (entryCounter == selectedEntry.SettingValue)) { //logger.info("Starting reading wanted frame: ", selectedEntry); return(currentEntry); } else { //logger.debug("Not reading unwanted frame: " + entryCounter); } } currentEntry = new ChemModel(); entryCounter++; if (!selectEntry || entryCounter == selectedEntry.SettingValue) { readThisEntry = true; } else { readThisEntry = false; } currentReactionStepSet = new SetOfReactions(); } else if (line.StartsWith("$DTYPE")) { System.String[] tuple = readDtypeDatumTuple(line); System.String dataType = tuple[0]; System.String datum = tuple[1]; // now some regular expression wizardry Match subLevelMatcher = subLevelDatum.Match(dataType); if (subLevelMatcher.Success) { // sub level field found System.String field = subLevelMatcher.Groups[2].Value; System.String fieldNumber = subLevelMatcher.Groups[3].Value; System.String subfield = subLevelMatcher.Groups[4].Value; processSubLevelField(field, fieldNumber, subfield, datum); } else { Match topLevelMatcher = topLevelDatum.Match(dataType); if (topLevelMatcher.Success) { // top level field found System.String field = topLevelMatcher.Groups[2].Value; processTopLevelField(field, datum); } else { //UPGRADE_ISSUE: Method 'java.io.LineNumberReader.getLineNumber' was not converted. "ms-help://MS.VSCC.v80/dv_commoner/local/redirect.htm?index='!DefaultContextWindowIndex'&keyword='jlca1000_javaioLineNumberReadergetLineNumber'" //logger.error("Could not parse datum tuple of type ", dataType, " around line " + input.getLineNumber()); } } } else { //UPGRADE_ISSUE: Method 'java.io.LineNumberReader.getLineNumber' was not converted. "ms-help://MS.VSCC.v80/dv_commoner/local/redirect.htm?index='!DefaultContextWindowIndex'&keyword='jlca1000_javaioLineNumberReadergetLineNumber'" //logger.warn("Unrecognized command on line " + input.getLineNumber(), ": ", line); } } if (currentEntry != null) { createNiceMACiETitle(currentEntry); // store last entry currentEntry.SetOfReactions = currentReactionStepSet; entries.addChemModel(currentEntry); fireFrameRead(); } if (selectEntry) { // apparently selected last one, other already returned return(currentEntry); } return(entries); }
/// <summary> Read a Reaction from a file in MACiE RDF format. /// /// </summary> /// <returns> The Reaction that was read from the MDL file. /// </returns> private IChemObject readReactions(bool selectEntry) { ChemSequence entries = new ChemSequence(); currentEntry = null; int entryCounter = 0; currentReactionStepSet = null; while (input.Peek() != -1) { //UPGRADE_WARNING: Method 'java.io.LineNumberReader.readLine' was converted to 'System.IO.StreamReader.ReadLine' which may throw an exception. "ms-help://MS.VSCC.v80/dv_commoner/local/redirect.htm?index='!DefaultContextWindowIndex'&keyword='jlca1101'" System.String line = input.ReadLine(); if (line.StartsWith("$RDFILE")) { entries = new ChemSequence(); } else if (line.StartsWith("$DATM")) { entries.setProperty(CreationDate, line.Substring(7)); } else if (line.StartsWith("$RIREG")) { // new entry, store previous entry if any if (currentEntry != null) { // store previous entry currentEntry.SetOfReactions = currentReactionStepSet; createNiceMACiETitle(currentEntry); entries.addChemModel(currentEntry); fireFrameRead(); if (selectEntry && (entryCounter == selectedEntry.SettingValue)) { //logger.info("Starting reading wanted frame: ", selectedEntry); return currentEntry; } else { //logger.debug("Not reading unwanted frame: " + entryCounter); } } currentEntry = new ChemModel(); entryCounter++; if (!selectEntry || entryCounter == selectedEntry.SettingValue) { readThisEntry = true; } else { readThisEntry = false; } currentReactionStepSet = new SetOfReactions(); } else if (line.StartsWith("$DTYPE")) { System.String[] tuple = readDtypeDatumTuple(line); System.String dataType = tuple[0]; System.String datum = tuple[1]; // now some regular expression wizardry Match subLevelMatcher = subLevelDatum.Match(dataType); if (subLevelMatcher.Success) { // sub level field found System.String field = subLevelMatcher.Groups[2].Value; System.String fieldNumber = subLevelMatcher.Groups[3].Value; System.String subfield = subLevelMatcher.Groups[4].Value; processSubLevelField(field, fieldNumber, subfield, datum); } else { Match topLevelMatcher = topLevelDatum.Match(dataType); if (topLevelMatcher.Success) { // top level field found System.String field = topLevelMatcher.Groups[2].Value; processTopLevelField(field, datum); } else { //UPGRADE_ISSUE: Method 'java.io.LineNumberReader.getLineNumber' was not converted. "ms-help://MS.VSCC.v80/dv_commoner/local/redirect.htm?index='!DefaultContextWindowIndex'&keyword='jlca1000_javaioLineNumberReadergetLineNumber'" //logger.error("Could not parse datum tuple of type ", dataType, " around line " + input.getLineNumber()); } } } else { //UPGRADE_ISSUE: Method 'java.io.LineNumberReader.getLineNumber' was not converted. "ms-help://MS.VSCC.v80/dv_commoner/local/redirect.htm?index='!DefaultContextWindowIndex'&keyword='jlca1000_javaioLineNumberReadergetLineNumber'" //logger.warn("Unrecognized command on line " + input.getLineNumber(), ": ", line); } } if (currentEntry != null) { createNiceMACiETitle(currentEntry); // store last entry currentEntry.SetOfReactions = currentReactionStepSet; entries.addChemModel(currentEntry); fireFrameRead(); } if (selectEntry) { // apparently selected last one, other already returned return currentEntry; } return entries; }