private void _exportLegacyEntities(StreamWriter w, bool isFirst, string standard, long size) { LegacyEntityExport entityExport = new LegacyEntityExport(_helper, standard, size); if (isFirst) { string headers = entityExport.Headers; w.WriteLine(headers); w.Flush(); } foreach (SymbolSet ss in _lib.SymbolSets) { // For each symbol set in JMSML... logger.Info("Exporting legacy entities for: " + ss.ID); try { if (ss.LegacySymbols != null) { foreach (SymbolSetLegacySymbol legacySymbol in ss.LegacySymbols) { // For each legacy symbol in that symbol set... if (legacySymbol.LegacyEntity != null) { foreach (LegacyEntityType legacyEntity in legacySymbol.LegacyEntity) { // Get the list of Legacy Function IDs for the specified legacy version of the standard if (legacyEntity.LegacyFunctionCode != null) { LegacyFunctionCodeType functionCode = _helper.LegacyFunction(legacyEntity.LegacyFunctionCode, standard); string line = ""; // If the icon is Full Frame then four lines need to be exported, to reflect the four icon shapes. // Else just write out one line for non-Full-Frame. if (legacyEntity.Icon == IconType.FULL_FRAME) { foreach (LibraryStandardIdentityGroup sig in _lib.Library.StandardIdentityGroups) { line = string.Format("{0}", entityExport.Line(sig, ss, legacySymbol, legacyEntity, functionCode)); w.WriteLine(line); w.Flush(); } } else { line = string.Format("{0}", entityExport.Line(null, ss, legacySymbol, legacyEntity, functionCode)); w.WriteLine(line); w.Flush(); } } } } } } } catch (Exception ex) { logger.Error(ex.Message); } } }