public static async Task<IEnumerable<ServerQueryResult>> ServersQuery(
            this IEnumerable<ServersQuery> serverQueryInfos,
            IGameServerQueryHandler service) {
            var result = Enumerable.Empty<ServerQueryResult>();
            foreach (var q in serverQueryInfos)
                result = Enumerable.Concat(result, await service.Query((dynamic) q).ConfigureAwait(false));

            return result;
        }
        public static async Task <SourceServersQuery> FakeSourceServerQuery(this IGameServerQueryHandler mediator,
                                                                            ISupportServers game)
        {
            SourceServersQuery parameters = null;

            A.CallTo(() => mediator.Query(A <SourceServersQuery> ._))
            .Invokes((SourceServersQuery x) => parameters = x)
            .ReturnsLazily(() => Task.FromResult(default(IEnumerable <ServerQueryResult>)));
            await game.QueryServers(mediator);

            return(parameters);
        }
Beispiel #3
0
 public ServerList(ISupportServers game, UserSettings settings, IEventAggregator eventBus,
                   IGameServerQueryHandler queryHandler, IGameContext gameContext)
 {
     _eventBus        = eventBus;
     _queryHandler    = queryHandler;
     _gameContext     = gameContext;
     _settings        = settings;
     _listTimer       = new TimerWithElapsedCancellationAsync(GetTimerValue(), ListTimerElapsed, null);
     _serverTimer     = new TimerWithElapsedCancellationAsync(ServerUpdateFrequency, ServerTimerElapsed);
     Game             = game;
     Filter           = Game.GetServerFilter();
     ServerQueryQueue = new ServerQueryQueue();
 }
Beispiel #4
0
        public static async Task <IEnumerable <ServerQueryResult> > ServersQuery(
            this IEnumerable <ServersQuery> serverQueryInfos,
            IGameServerQueryHandler service)
        {
            var result = Enumerable.Empty <ServerQueryResult>();

            foreach (var q in serverQueryInfos)
            {
                result = Enumerable.Concat(result, await service.Query((dynamic)q).ConfigureAwait(false));
            }

            return(result);
        }
Beispiel #5
0
        public override Task <IEnumerable <ServerQueryResult> > QueryServers(
            IGameServerQueryHandler queryHandler)
        {
            switch (Settings.ServerQueryMode)
            {
            case ServerQueryMode.All:
                return(serverQueries.ServersQuery(queryHandler));

            case ServerQueryMode.Gamespy:
                return(queryHandler.Query(gamespyServersQuery));

            case ServerQueryMode.Steam:
                return(queryHandler.Query(sourceServersQuery));

            default:
                throw new InvalidOperationException("Unknown server query: " + Settings.ServerQueryMode);
            }
        }
 public virtual Task<IEnumerable<ServerQueryResult>> QueryServers(IGameServerQueryHandler queryHandler) {
     return queryHandler.Query(serverQueryInfo);
 }
 public override Task<IEnumerable<ServerQueryResult>> QueryServers(IGameServerQueryHandler queryHandler) {
     return queryHandler.Query(TakeOnHelicoptersGame.queryHandler);
 }
Beispiel #8
0
 public override Task<IEnumerable<ServerQueryResult>> QueryServers(
     IGameServerQueryHandler queryHandler) {
     switch (Settings.ServerQueryMode) {
     case ServerQueryMode.All:
         return serverQueries.ServersQuery(queryHandler);
     case ServerQueryMode.Gamespy:
         return queryHandler.Query(gamespyServersQuery);
     case ServerQueryMode.Steam:
         return queryHandler.Query(sourceServersQuery);
     default:
         throw new InvalidOperationException("Unknown server query: " + Settings.ServerQueryMode);
     }
 }
Beispiel #9
0
 public override Task<IEnumerable<ServerQueryResult>> QueryServers(IGameServerQueryHandler service) {
     throw new NotImplementedException();
 }
Beispiel #10
0
 public override Task <IEnumerable <ServerQueryResult> > QueryServers(IGameServerQueryHandler service)
 {
     throw new NotImplementedException();
 }
Beispiel #11
0
 public abstract Task<IEnumerable<ServerQueryResult>> QueryServers(IGameServerQueryHandler queryHandler);
Beispiel #12
0
 public override Task <IEnumerable <ServerQueryResult> > QueryServers(IGameServerQueryHandler queryHandler) => queryHandler.Query(serverQueryInfo);
Beispiel #13
0
 public abstract Task <IEnumerable <ServerQueryResult> > QueryServers(IGameServerQueryHandler queryHandler);
 public override Task<IEnumerable<ServerQueryResult>> QueryServers(IGameServerQueryHandler queryHandler) => queryHandler.Query(serverQueryInfo);
Beispiel #15
0
 public override Task <IEnumerable <ServerQueryResult> > QueryServers(IGameServerQueryHandler queryHandler) => queryHandler.Query(TakeOnHelicoptersGame.queryHandler);