public void Export(string rootDir) { var exports = _io.FindExports(); _profiles = Lists.NewList <UserProfileEvent>(); _days = new HashSet <string>(); _helper.LogFoundExports(exports.Count); var fileCounter = 0; foreach (var exportZip in exports) { _helper.LogOpenExport(exportZip); var hasUserProfile = false; foreach (var up in _io.ReadEvents(exportZip)) { RegisterKey(fileCounter, up); var userProfileEvent = up as UserProfileEvent; if (userProfileEvent != null) { hasUserProfile = true; _profiles.Add(userProfileEvent); } } _helper.LogResult(hasUserProfile); fileCounter++; } _helper.LogNumberDays(fileCounter, _days.Count); _helper.LogUserProfiles(_profiles); }
public void Run() { var startedAt = DateTime.Now; _sortedEvents = new Dictionary <string, IList <CompletionEvent> >(); var exports = _ioHelper.FindExports(); Log("found {0} exports:", exports.Count); foreach (var export in exports) { Log(" - {0}", export); } Log(""); var total = exports.Count; var current = 1; foreach (var exportFile in exports) { ReadAndSortEvents(exportFile, current++, total); } _ioHelper.OpenCache(); total = _sortedEvents.Keys.Count; current = 1; foreach (var key in _sortedEvents.Keys) { ProcessSortedEvents(key, current++, total); } _ioHelper.CloseCache(); Log(""); Log("finished! (started at {0})", startedAt); Log("found {0} events in total, extracted {1} tuples in total", _numTotalEvents, _numTotalTuples); }