Esempio n. 1
0
 public RoomController
 (
     IRoomManager roomManager
 )
 {
     _roomManager = roomManager;
 }
        public async Task CreateRoomNoServersTest()
        {
            _serverProvider = new FakeServerProvider(false, true);

            _roomManager = new RoomManager(_serverProvider, _logger, _taskSchedulerFactory, _roomApiProvider);

            var            players    = new Dictionary <Guid, Dictionary <byte, object> >();
            var            properties = new Dictionary <byte, object>();
            var            success    = true;
            Exception      ex         = null;
            JoinRoomResult result     = null;

            properties.Add(PropertyCode.RoomProperties.TotalPlayersNeeded, 3);
            try
            {
                result = await _roomManager.CreateRoom(_group1Id, players, properties);
            }
            catch (Exception e)
            {
                success = false;
                ex      = e;
            }

            Assert.IsNotNull(result);
            Assert.AreEqual(result.Result, RoomOperationResult.ServerNotFound);
            Assert.AreEqual(true, success);
            Assert.AreEqual(null, ex);
            Assert.AreEqual(0, _roomManager.GetRoomsCount());
        }
Esempio n. 3
0
        private void init()
        {
            _dispatcher  = new RoomEventDispatcher();
            _roomFactory = new ServerRoomFactory(_dispatcher, _coRoutineManager, _assetManager);
            _roomManager = new SingleRoomManager(_roomFactory, _dispatcher, false, _roomListener);


            _loginServer = new LoginServer(_dispatcher, _roomManager);
            _loginServer.Start(new NetworkPortInfo(
                                   SingletonManager.Get <ServerFileSystemConfigManager>().BootConfig.BattleServer.TcpPort,
                                   SingletonManager.Get <ServerFileSystemConfigManager>().BootConfig.BattleServer.UdpPort));

            _hallServerNetwork = new HallServerNetwork(_dispatcher);
            _hallServerNetwork.StartServer(new NetworkPortInfo(
                                               SingletonManager.Get <ServerFileSystemConfigManager>().BootConfig.HallRoomServer.ListenPort, 0));

            MyHttpServer.Start(SingletonManager.Get <ServerFileSystemConfigManager>().BootConfig.HttpPort);
            if (SingletonManager.Get <ServerFileSystemConfigManager>().BootConfig.AllocationServer.Open == 1)
            {
                _hallServerNetwork.ClientConnect(new NetworkPortInfo(
                                                     SingletonManager.Get <ServerFileSystemConfigManager>().BootConfig.AllocationServer.ConnectPort, 0));
            }
            else
            {
                _logger.InfoFormat("Server Configuration: Do Not connect to Allocation Server!");
            }
        }
Esempio n. 4
0
        public RawSocketServer(IMainApp mainApp
                               , IConfiguration configuration
                               , IPool <IRemoteClient> pool
                               , IRoomManager roomManager)
        {
            if (mainApp == null)
            {
                throw new ArgumentNullException(nameof(mainApp));
            }

            if (configuration == null)
            {
                throw new ArgumentNullException(nameof(configuration));
            }

            if (pool == null)
            {
                throw new ArgumentNullException(nameof(pool));
            }

            if (roomManager == null)
            {
                throw new ArgumentNullException(nameof(roomManager));
            }

            _mainApp       = mainApp;
            _configuration = configuration;
            _pool          = pool;
            _roomManager   = roomManager;
            _tcpListener   = new TcpListener(_configuration.ListenAdress);
        }
Esempio n. 5
0
 public RoomsController(IUserManager userManager, IRoomManager roomManager, IBookingManager bookingManager, ILocationManager locationManager)
 {
     _roomManager     = roomManager;
     _bookingManager  = bookingManager;
     _locationManager = locationManager;
     _userManager     = userManager;
 }
Esempio n. 6
0
 public void Initialize(IRoomManager roomManager, IShamanMessageSender messageSender,
                        string authSecret)
 {
     _roomManager   = roomManager;
     _messageSender = messageSender;
     _authSecret    = authSecret;
 }
Esempio n. 7
0
 public LoginServer(RoomEventDispatcher dispatcher, IRoomManager roomManager)
 {
     _dispatcher              = dispatcher;
     _roomManager             = roomManager;
     _networkMonitor          = new PlayerNetworkMonitor(_dispatcher, _roomManager);
     _dispatcher.OnRoomEvent += OnRoomEvent;
 }
        public MmApplication(
            IShamanLogger logger,
            IApplicationConfig config,
            ISerializer serializer,
            ISocketFactory socketFactory,
            IMatchMaker matchMaker,
            IRequestSender requestSender,
            ITaskSchedulerFactory taskSchedulerFactory,
            IPacketSender packetSender,
            IShamanMessageSenderFactory messageSenderFactory,
            IMatchMakerServerInfoProvider serverProvider,
            IRoomManager roomManager, IMatchMakingGroupsManager matchMakingGroupManager, IPlayersManager playersManager, IMmMetrics mmMetrics, IProtectionManager protectionManager) : base(logger, config, serializer,
                                                                                                                                                                                            socketFactory, taskSchedulerFactory, requestSender, mmMetrics, protectionManager)
        {
            _packetSender            = packetSender;
            _messageSenderFactory    = messageSenderFactory;
            _serverProvider          = serverProvider;
            _roomManager             = roomManager;
            _matchMakingGroupManager = matchMakingGroupManager;
            _playersManager          = playersManager;
            _matchMaker = matchMaker;
            _id         = Guid.NewGuid();

            Logger?.Debug($"MmApplication constructor called. Id = {_id}");
        }
Esempio n. 9
0
 public MatchmakerController(ISerializer serializer, IShamanLogger logger, IRoomManager roomManager, IMatchMakerServerInfoProvider serverInfoProvider)
 {
     _serializer         = serializer;
     _logger             = logger;
     _roomManager        = roomManager;
     _serverInfoProvider = serverInfoProvider;
 }
 public BookingsController(IRoomManager roomMan, ICostumerManager costManager
                           , IBookingManager manager, IBookingViewModel viewModel)
 {
     this.roomManager      = roomMan;
     this.customerManager  = costManager;
     this.bookingManager   = manager;
     this.bookingViewModel = viewModel;
 }
Esempio n. 11
0
        public Room ApplyCharges()
        {
            IRoomManager manager = this.Create();

            _room.PricePerNight += manager.GetAdittionalCharges();
            _room.Guests        += manager.GetAdittionalGuests();
            return(_room);
        }
Esempio n. 12
0
 public RoomsController(IRoomManager roomsManager,
                        IRepository userManager,
                        IRoomSecurityManager roomSecyrityManager)
 {
     this.roomsManager        = roomsManager;
     this.repository          = userManager;
     this.roomSecyrityManager = roomSecyrityManager;
 }
Esempio n. 13
0
 /// <summary>
 /// Creates a new <see cref="CharacterSelectionMessageHandler"/> instance.
 /// </summary>
 /// <param name="muplonenDbContext">The database context.</param>
 /// <param name="roomManager">The room manager.</param>
 /// <param name="logger">Logging.</param>
 public CharacterSelectionMessageHandler(
     MuplonenDbContext muplonenDbContext,
     IRoomManager roomManager,
     ILogger <CharacterSelectionMessageHandler> logger)
 {
     _muplonenDbContext = muplonenDbContext;
     _roomManager       = roomManager;
     _logger            = logger;
 }
Esempio n. 14
0
 public void Initialize(IMatchMaker matchMaker, IShamanMessageSender packetSender, IRoomManager roomManager, IMatchMakingGroupsManager matchMakingGroupsManager,
                        string authSecret)
 {
     _matchMaker               = matchMaker;
     _messageSender            = packetSender;
     _authSecret               = authSecret;
     _roomManager              = roomManager;
     _matchMakingGroupsManager = matchMakingGroupsManager;
 }
Esempio n. 15
0
 public AllocateClassRoomController(IAllocateClassRoomManager allocateClassRoomManager, IDepartmentManager departmentManager, ICourseManager courseManager, IRoomManager roomManager, IDayManager dayManager, IMapper mapper)
 {
     _allocateClassRoomManager = allocateClassRoomManager;
     _departmentManager        = departmentManager;
     _courseManager            = courseManager;
     _roomManager = roomManager;
     _dayManager  = dayManager;
     _mapper      = mapper;
 }
Esempio n. 16
0
 public RobotsManager(Contexts contexts, IRoomManager roomManager)
 {
     _roomManager = roomManager;
     _player      = contexts.player;
     _humanGroup  = _player.GetGroup(PlayerMatcher.AllOf(PlayerMatcher.Network, PlayerMatcher.PlayerInfo)
                                     .NoneOf(PlayerMatcher.Robot));
     _robotGroup =
         _player.GetGroup(PlayerMatcher.AllOf(PlayerMatcher.Network, PlayerMatcher.PlayerInfo,
                                              PlayerMatcher.Robot));
 }
Esempio n. 17
0
        public GameFSM(ISceneManager sceneManager, IUIManager uiManager, IRoomManager roomManager)
        {
            var states = new Dictionary <eGameFSM, GameState>();

            states.Add(eGameFSM.Default, new DefaultGameState(this));
            states.Add(eGameFSM.StartUp, new StartUpGameState(this, sceneManager, uiManager));
            states.Add(eGameFSM.Login, new LoginGameState(this, roomManager));
            states.Add(eGameFSM.PairRoom, new PairRoomState(this, uiManager));
            this.states = states;
        }
 public void Setup()
 {
     _logger               = new ConsoleLogger();
     _serverProvider       = new FakeServerProvider();
     _taskSchedulerFactory = new TaskSchedulerFactory(_logger);
     _requestSender        = new FakeSender();
     _roomApiProvider      = new DefaultRoomApiProvider(_requestSender, _logger);
     _roomManager          = new RoomManager(_serverProvider, _logger, _taskSchedulerFactory, _roomApiProvider);
     _roomManager.Start(5);
 }
 public GameApplication(IShamanLogger logger, IApplicationConfig config, ISerializer serializer,
                        ISocketFactory socketFactory, ITaskSchedulerFactory taskSchedulerFactory, IRequestSender requestSender,
                        IRoomManager roomManager, IPacketSender packetSender, IGameMetrics gameMetrics,
                        IShamanMessageSenderFactory messageSenderFactory, IProtectionManager protectionManager) :
     base(logger, config, serializer, socketFactory, taskSchedulerFactory, requestSender, gameMetrics, protectionManager)
 {
     _roomManager          = roomManager;
     _packetSender         = packetSender;
     _messageSenderFactory = messageSenderFactory;
     Logger.Debug($"GameApplication constructor called");
 }
Esempio n. 20
0
 public MatchMaker(IHubContext <MasterHub> masterHub, IMasterRepo masterRepo,
                   ISessionRepo sessionRepo,
                   IRoomManager roomManager, IServerLoop serverLoop, ILogger <MatchMaker> logger)
 {
     _masterHub   = masterHub;
     _masterRepo  = masterRepo;
     _sessionRepo = sessionRepo;
     _roomManager = roomManager;
     _serverLoop  = serverLoop;
     _logger      = logger;
 }
Esempio n. 21
0
 public MasterHub(IMasterRepo masterRepo, ILobbyManager lobbyManager,
                  ISessionRepo sessionRepo, IRoomManager roomManager, IMatchMaker matchMaker,
                  ILogger <MasterHub> logger)
 {
     _masterRepo   = masterRepo;
     _lobbyManager = lobbyManager;
     _sessionRepo  = sessionRepo;
     _roomManager  = roomManager;
     _matchMaker   = matchMaker;
     _logger       = logger;
 }
Esempio n. 22
0
 public void HandleLogout()
 {
     if (lagMonitor != null && lagMonitor.IsRunning)
     {
         lagMonitor.Stop();
     }
     userManager    = new SFSGlobalUserManager(this);
     roomManager    = new SFSRoomManager(this);
     isJoining      = false;
     lastJoinedRoom = null;
     currentZone    = null;
     mySelf         = null;
 }
Esempio n. 23
0
 public MatchMakingGroupManager(IShamanLogger logger, ITaskSchedulerFactory taskSchedulerFactory,
                                IPlayersManager playersManager, IShamanMessageSender messageSender, IMmMetrics mmMetrics, IRoomManager roomManager,
                                IRoomPropertiesProvider roomPropertiesProvider, IApplicationConfig config)
 {
     _logger = logger;
     _taskSchedulerFactory   = taskSchedulerFactory;
     _playersManager         = playersManager;
     _messageSender          = messageSender;
     _mmMetrics              = mmMetrics;
     _roomManager            = roomManager;
     _roomPropertiesProvider = roomPropertiesProvider;
     _config = config;
 }
Esempio n. 24
0
        // GET: Rooms
        public ActionResult Index(ReservationSearchModel model)
        {
            _types      = _roomType.RetrieveAllRoomTypes();
            roomManager = new RoomManager();

            model.Rooms = roomManager.RetrieveRoomList();

            int hour = DateTime.Now.Hour;

            ViewBag.Greeting = hour < 12 ? "Good Morning" : "Good Afternoon";
            ViewBag.Types    = _types;
            return(View(model));
        }
Esempio n. 25
0
 private void Reset()
 {
     userManager  = new SFSGlobalUserManager(this);
     roomManager  = new SFSRoomManager(this);
     buddyManager = new SFSBuddyManager(this);
     if (lagMonitor != null)
     {
         lagMonitor.Destroy();
     }
     isJoining      = false;
     currentZone    = null;
     lastJoinedRoom = null;
     sessionToken   = null;
     mySelf         = null;
 }
Esempio n. 26
0
 public View(IModel model)
 {
     try
     {
         _model = model;
         _formMain = new FormMain();
         _roomManager = new RoomManager(_formMain);
         _formActions = new FormActions(new EventHandler(this.RoomButtonAction));
         _webcamActive = false;
         _pictureReset = false;
     }
     catch (Exception ex)
     {
         Tools.Instance.Logger.LogError(ex.ToString());
     }
 }
        public GameController(
            IRoomManager roomManager,
            IVerificationService <PlayerVerificationResponseModel> VerificationService,
            IIdentifierGenerator identifierGenerator,
            ILobbyService lobbyService,
            IChatRoomService chatRoomService)
        {
            verificationService = VerificationService;
            RoomManager         = roomManager;
            IdentifierGenerator = identifierGenerator;
            LobbyService        = lobbyService;
            ChatRoomService     = chatRoomService;

            GameFactory = new GameFactory();
            ReadyTimer  = new ReadyTimer();
            Thread timerThread = new Thread(ReadyTimer.StartTimer);

            timerThread.Start();

            Players   = new HashSet <IPlayer>();
            GameTypes = new Dictionary <int, string>();
        }
        public MatchMakingGroup(Dictionary <byte, object> roomProperties,
                                IShamanLogger logger, ITaskSchedulerFactory taskSchedulerFactory, IPlayersManager playersManager,
                                IShamanMessageSender messageSender, IMmMetrics mmMetrics, IRoomManager roomManager)
        {
            Id = Guid.NewGuid();

            _logger             = logger;
            _playersManager     = playersManager;
            _taskScheduler      = taskSchedulerFactory.GetTaskScheduler();
            _matchmakingPlayers = new Queue <MatchMakingPlayer>();
            RoomProperties      = roomProperties;
            _messageSender      = messageSender;
            _mmMetrics          = mmMetrics;
            _roomManager        = roomManager;

            //get properties from dict
            if (!roomProperties.TryGetValue(PropertyCode.RoomProperties.MatchMakingTick, out var tickProperty))
            {
                throw new Exception($"MatchMakingGroup ctr error: there is no MatchMakingTick property");
            }
            if (!roomProperties.TryGetValue(PropertyCode.RoomProperties.TotalPlayersNeeded, out var totalPlayersProperty))
            {
                throw new Exception($"MatchMakingGroup ctr error: there is no TotalPlayersNeeded property");
            }
            if (!roomProperties.TryGetValue(PropertyCode.RoomProperties.MaximumMmTime, out var timeBeforeBotsProperty))
            {
                throw new Exception($"MatchMakingGroup ctr error: there is no MaximumMmTime property");
            }
            if (!roomProperties.TryGetValue(PropertyCode.RoomProperties.MaximumMatchMakingWeight, out var maxMmWeight))
            {
                throw new Exception($"MatchMakingGroup ctr error: there is no MaximumMatchMakingWeight property");
            }

            _matchMakingTickMs  = (int)tickProperty;
            _totalPlayersNeeded = (int)totalPlayersProperty;
            _maximumMmTime      = (int)timeBeforeBotsProperty;
            _maxMmWeight        = (int)maxMmWeight;
        }
        public void Setup()
        {
            _logger = new ConsoleLogger();
            _taskSchedulerFactory = new TaskSchedulerFactory(_logger);
            _playersManager       = new PlayersManager(Mock.Of <IMmMetrics>(), _logger);
            _packetSender         = Mock.Of <IShamanMessageSender>();
            _serverProvider       = new FakeServerProvider();
            _requestSender        = new FakeSender();
            _roomApiProvider      = new DefaultRoomApiProvider(_requestSender, _logger);
            _roomManager          = new RoomManager(_serverProvider, _logger, _taskSchedulerFactory, _roomApiProvider);

            _measures.Add(FakePropertyCodes.PlayerProperties.GameMode, 1);
            _roomProperties.Add(FakePropertyCodes.RoomProperties.MatchMakingTick, 250);
            _roomProperties.Add(FakePropertyCodes.RoomProperties.TotalPlayersNeeded, 3);
            _roomProperties.Add(FakePropertyCodes.RoomProperties.MaximumMmTime, 500);
            _roomProperties.Add(FakePropertyCodes.RoomProperties.MaximumMatchMakingWeight, 1);


            _group = new MatchMakingGroup(_roomProperties, _logger, _taskSchedulerFactory, _playersManager,
                                          _packetSender, Mock.Of <IMmMetrics>(), _roomManager);
            _roomManager.Start(10000);
            _group.Start();
        }
        public void Setup()
        {
            // var config = new MmApplicationConfig("", "127.0.0.1", new List<ushort> {0}, "", 120000, GameProject.DefaultGame,"", 7002, isAuthOn:false);
            var config = new ApplicationConfig
            {
                PublicDomainNameOrAddress = "127.0.0.1",
                ListenPorts = new List <ushort> {
                    0
                },
                IsAuthOn       = false,
                BindToPortHttp = 7002
            };

            _logger = new ConsoleLogger();
            _roomPropertiesProvider = new FakeRoomPropertiesProvider(3, 500, 250, 3);

            _taskSchedulerFactory = new TaskSchedulerFactory(_logger);
            _playersManager       = new PlayersManager(Mock.Of <IMmMetrics>(), _logger);
            _packetSender         = Mock.Of <IShamanMessageSender>();
            _serverProvider       = new FakeServerProvider();
            _requestSender        = new FakeSender();
            _roomApiProvider      = new DefaultRoomApiProvider(_requestSender, _logger);
            _roomManager          = new RoomManager(_serverProvider, _logger, _taskSchedulerFactory, _roomApiProvider);

            _measures.Add(FakePropertyCodes.PlayerProperties.GameMode, 1);

            _playerProperties = new Dictionary <byte, object>
            {
                { FakePropertyCodes.PlayerProperties.GameMode, 1 }
            };

            _matchMakingGroupManager = new MatchMakingGroupManager(_logger, _taskSchedulerFactory, _playersManager,
                                                                   _packetSender, Mock.Of <IMmMetrics>(), _roomManager, _roomPropertiesProvider, config);
            _matchMakingGroupManager.AddMatchMakingGroup(_measures);
            _matchMakingGroupManager.Start(10000);
        }
 public RoomAmenitiesController(IRoomManager rooms, IAmenitiesManager amenities)
 {
     _rooms     = rooms;
     _amenities = amenities;
 }
Esempio n. 32
0
 public HomeEndpoint(IRoomManager roomManager)
 {
     _roomManager = roomManager;
 }