public Server(ILogger <Server> logger, SharedLibraryCore.Interfaces.ILogger deprecatedLogger, ServerConfiguration config, IManager mgr, IRConConnectionFactory rconConnectionFactory, IGameLogReaderFactory gameLogReaderFactory, IServiceProvider serviceProvider) { Password = config.Password; IP = config.IPAddress; Port = config.Port; Manager = mgr; Logger = deprecatedLogger; ServerConfig = config; EventProcessing = new SemaphoreSlim(1, 1); Clients = new List <EFClient>(new EFClient[64]); Reports = new List <Report>(); ClientHistory = new Queue <PlayerHistory>(); ChatHistory = new List <ChatInfo>(); NextMessage = 0; CustomSayEnabled = Manager.GetApplicationSettings().Configuration().EnableCustomSayName; CustomSayName = Manager.GetApplicationSettings().Configuration().CustomSayName; this.gameLogReaderFactory = gameLogReaderFactory; RConConnectionFactory = rconConnectionFactory; ServerLogger = logger; DefaultSettings = serviceProvider.GetRequiredService <DefaultSettings>(); InitializeTokens(); InitializeAutoMessages(); }
/// <summary> /// base constructor /// </summary> /// <param name="translationLookup"></param> /// <param name="rconConnectionFactory"></param> public GameServerInstanceFactory(ITranslationLookup translationLookup, IRConConnectionFactory rconConnectionFactory, IGameLogReaderFactory gameLogReaderFactory, IMetaService metaService) { _translationLookup = translationLookup; _rconConnectionFactory = rconConnectionFactory; _gameLogReaderFactory = gameLogReaderFactory; _metaService = metaService; }
public GameLogEventDetection(ILogger <GameLogEventDetection> logger, IW4MServer server, Uri[] gameLogUris, IGameLogReaderFactory gameLogReaderFactory) { _reader = gameLogReaderFactory.CreateGameLogReader(gameLogUris, server.EventParser); _server = server; _ignoreBots = server?.Manager.GetApplicationSettings().Configuration().IgnoreBots ?? false; _logger = logger; }
public Server(ServerConfiguration config, IManager mgr, IRConConnectionFactory rconConnectionFactory, IGameLogReaderFactory gameLogReaderFactory) { Password = config.Password; IP = config.IPAddress; Port = config.Port; Manager = mgr; Logger = Manager.GetLogger(this.EndPoint); Logger.WriteInfo(this.ToString()); ServerConfig = config; RemoteConnection = rconConnectionFactory.CreateConnection(IP, Port, Password); EventProcessing = new SemaphoreSlim(1, 1); Clients = new List <EFClient>(new EFClient[18]); Reports = new List <Report>(); ClientHistory = new Queue <PlayerHistory>(); ChatHistory = new List <ChatInfo>(); NextMessage = 0; CustomSayEnabled = Manager.GetApplicationSettings().Configuration().EnableCustomSayName; CustomSayName = Manager.GetApplicationSettings().Configuration().CustomSayName; this.gameLogReaderFactory = gameLogReaderFactory; InitializeTokens(); InitializeAutoMessages(); }