public static TM_FileStorage load_GuidanceItemsFromCache(this TM_FileStorage tmFileStorage) { var tmDatabase = tmFileStorage.tmXmlDatabase(); if (tmDatabase.isNull()) { return(tmFileStorage); } var chacheFile = tmFileStorage.getCacheLocation(); if (chacheFile.fileExists().isFalse()) { "[TM_Xml_Database] [load_GuidanceItemsFromCache] cached file not found: {0}".debug(chacheFile); tmFileStorage.xmlDB_Load_GuidanceItems_and_Create_CacheFile(); } else { var o2Timer = new O2Timer("[TM_Xml_Database] [loadGuidanceItemsFromCache] loaded cache ").start(); var loadedGuidanceItems = chacheFile.load <List <TeamMentor_Article> >(); o2Timer.stop(); if (loadedGuidanceItems.isNull()) //if we couldn't load it , delete it { Files.deleteFile(chacheFile); } else { o2Timer = new O2Timer("[TM_Xml_Database] [loadGuidanceItemsFromCache] loading files ").start(); foreach (var loadedGuidanceItem in loadedGuidanceItems) { if (loadedGuidanceItem.notNull()) { tmDatabase.Cached_GuidanceItems.add(loadedGuidanceItem.Metadata.Id, loadedGuidanceItem); } } o2Timer.stop(); } tmFileStorage.populateGuidanceItemsFileMappings(); } return(tmFileStorage); }