public ShellViewModel( IFileService fileService, ILogLoader logLoader, PanelsViewModel plugins, IEventAggregator eventAggregator, SnackbarService snackbarService, IDialogService dialogService, Func <SaveRuleMessage, SaveRuleViewModel> saveRuleFactory, Func <LoadRuleMessage, LoadRuleViewModel> loadRuleFactory, LibraryPanelViewModel libraryPanel, Func <LogStateViewModel> logStateFactory, DropService dropService, StatusBarViewModel statusBar) { _fileService = fileService; _logLoader = logLoader; _eventAggregator = eventAggregator; _snackbarService = snackbarService; _dialogService = dialogService; _saveRuleFactory = saveRuleFactory; _loadRuleFactory = loadRuleFactory; _dropService = dropService; Plugins = plugins; Snackbar = snackbarService; LibraryPanel = libraryPanel; StatusBar = statusBar; _eventAggregator.Subscribe(this); LogState = logStateFactory(); Items.AddRange(new Screen[] { plugins, statusBar }); DisplayName = "ANALOG"; }
/// <summary> /// Asynchronně načte všechna dostupná data, která jsou ohraničená <paramref name="pocatek"/> a <paramref name="pocatek"/>. /// </summary> /// <param name="pocatek"></param> /// <param name="konec"></param> /// <returns>Kolekce načtených dat typu <see cref="LogDataCollection"/>.</returns> /// <exception cref="ProcesEndedByUserException">V případě, že je proces předčasně ukončen uživatelem.</exception> public async Task <LogDataCollection> LoadAsyncData(DateTime pocatek, DateTime konec) { // Upozorní uživatele, že se pokouší načíst velké množství dat a požádá o potvrzení. if ((int)(konec - pocatek).TotalSeconds > POCET_RADKU_THRESHOLD && !errorDisplayService.ShowAsYesNo($"Počet potřebných řádků k načtení ze souboru přesahuje hodnotu {POCET_RADKU_THRESHOLD}" + $". Z toho může plynout dlouhá načítací doba. Chcete i přesto pokračovat? ")) { throw new ProcesEndedByUserException("Too many data rows."); } IEnumerable <string> vybraneSoubory = fileBrowser.GetOrderedFiles(pocatek, konec) ?? new List <string>(); var output = new LogDataCollection(template); foreach (var soubor in vybraneSoubory) { ILogLoader loader = logLoaderFactory.Create(soubor); output.AddRange((await loader.LoadAsyncData(pocatek, konec)).ToList()); // V případě, že loader již načetl veškeré soubory, tak je z této metody vyskočeno. if (loader.IsCompleted) { break; } } IsCompleted = true; return(output); }
public WinformViewer() { InitializeComponent(); this.rtbClassViewer.SelectionBackColor = Color.Red; this.rtbClassViewer.SelectionColor = Color.White; this.logLoader = new LogLoader(this); }
public ImportModule( ILogLoader logLoader, IDimensionLoader dimensionLoader, IAchievementLoader achievementLoader, IStatsLoader statsLoader, INbtEndScreenLoader playerNbtLoader, INbtLoader nbtLoader, ILogger <ImportModule> logger) { _logLoader = logLoader; _dimensionLoader = dimensionLoader; _achievementLoader = achievementLoader; _statsLoader = statsLoader; _playerNbtLoader = playerNbtLoader; _nbtLoader = nbtLoader; _logger = logger; }
public MultiLogFileDropHandler(ILogState logState, ILogLoader logLoader) { _logState = logState; _logLoader = logLoader; }
/// <summary> /// Adds list loader /// </summary> /// <param name="loader"></param> public static void AddListLoader(this ILogLoader loader) { LogListLoaderCollection c = listLoader as LogListLoaderCollection; c.Add(loader); }
public LogAnalyzer(ILogLoader logLoader) { this.logLoader = logLoader; }
public ArchiveFromHttpDropHandler(ILogState logState, ILogLoader logLoader) { _logState = logState; _logLoader = logLoader; }
/// <summary> /// Adds a loader /// </summary> /// <param name="loader">The loder for add</param> public void Add(ILogLoader loader) { loaders.Add(loader); }
public SingleDirectoryDropHandler(ILogState logState, ILogLoader logLoader) { _logState = logState; _logLoader = logLoader; }