/** * Take the given BibtexEntry and resolve any string references. * * @param entry * A BibtexEntry in which all strings of the form #xxx# will be * resolved against the hash map of string references stored in * the databasee. * * @param inPlace * If inPlace is true then the given BibtexEntry will be * modified, if false then a copy is made using close made before * resolving the strings. * * @return a BibtexEntry with all string references resolved. It is * dependent on the value of inPlace whether a copy is made or the * given BibtexEntries is modified. */ public BibtexEntry resolveForStrings(BibtexEntry entry, bool inPlace) { if (!inPlace){ entry = (BibtexEntry)entry.clone(); } foreach (object field in entry.getAllFields()){ entry.setField(field.ToString(), this.resolveForStrings(entry.getField(field.ToString()).ToString())); } return entry; }