public ServerHistoryProvider Create(CharacterName characterName) { if (characterName == null) { throw new ArgumentNullException(nameof(characterName)); } var persistent = persistentCollection.GetObject <PersistentModel.ServerHistory>(characterName.Normalized); var wurmCharacterLogFiles = wurmLogFiles.GetForCharacter(characterName); return(new ServerHistoryProvider( characterName, persistent, wurmLogsMonitor, wurmLogsHistory, wurmServerList, logger, wurmCharacterLogFiles, internalEventAggregator)); }
public virtual CharacterMonthlyLogHeuristics GetForCharacter(CharacterName characterName) { if (characterName == null) { throw new ArgumentNullException(nameof(characterName)); } CharacterMonthlyLogHeuristics heuristics; if (!cache.TryGetValue(characterName, out heuristics)) { IPersistent <WurmCharacterLogsEntity> persistentData = heuristicsPersistentCollection.GetObject <WurmCharacterLogsEntity>(characterName.Normalized); heuristics = new CharacterMonthlyLogHeuristics( persistentData, monthlyHeuristicsExtractorFactory, wurmLogFiles.GetForCharacter(characterName)); cache.Add(characterName, heuristics); } return(heuristics); }