Example #1
0
        public async Task creates_room_with_roomcreated_event_containing_room_number()
        {
            // Given
            var irrelevantRoomId     = Room.RoomId.New;
            var irrelevantRoomNumber = "123";

            var room    = new Room(irrelevantRoomId);
            var handler = new CreateRoomHandler();

            // When
            var result = await handler.ExecuteCommandAsync(
                room,
                new CreateRoom(irrelevantRoomId, irrelevantRoomNumber),
                CancellationToken.None);

            // Then
            Assert.True(result.IsSuccess);

            var uncommittedEvents = room.UncommittedEvents.ToArray();

            Assert.Single(uncommittedEvents);

            Assert.IsType <RoomCreated>(uncommittedEvents[0].AggregateEvent);
            var roomCreatedEvent = (RoomCreated)uncommittedEvents[0].AggregateEvent;

            Assert.Equal(irrelevantRoomNumber, roomCreatedEvent.RoomNumber);
        }
Example #2
0
    public void Start()
    {
        createRoomHandler = m_CreateRoomPanel.AddComponent <CreateRoomHandler>();
        roomListHandler   = m_RoomListPanel.AddComponent <RoomListHandler>();
        joinRoomHandler   = m_RoomListPanel.AddComponent <JoinRoomHandler>();
        exitRoomHandler   = m_RoomPanel.AddComponent <ExitRoomHandler>();

        joinRoomHandler.JoinRoomEvent   += JoinRoomHandler_JoinRoomEvent;
        roomListHandler.OnRoomListEvent += RoomListHandler_OnRoomListEvent;
    }
Example #3
0
    public void Start()
    {
        PlayerPrefs.SetString("Scene", "Main");
        PlayerPrefs.Save();

        CreatedRoom += new CreateRoomHandler(CreateRoom);

        Invoke("CreateRoom", 0.5f);
        AllowButtonClick = true;
    }
Example #4
0
        private static void Server_OnRequestReceived(NetPeer peer, byte[] data, string networkID)
        {
            ClientController client = null;

            lock (ClientsLock) {
                client = ClientControllers.Find(x => x.Peer == peer);
            }

            if (client == null)
            {
                return;
            }

            NetDataRequest ndata = Utils.FromBytesJSON <NetDataRequest>(data);

            if (string.IsNullOrEmpty(client.Client.Nickname))
            {
                switch (ndata.Type)
                {
                case RequestTypes.Login: LoginHandler.DoHandle(ndata, client, networkID); break;
                }
            }
            else
            {
                switch (ndata.Type)
                {
                case RequestTypes.EnterInMission: EnterInMissionHandler.DoHandle(ndata, client, networkID); break;

                case RequestTypes.SyncPlayer: SyncPlayerHandler.DoHandle(ndata, client, networkID); break;

                case RequestTypes.Shoot: ShootHandler.DoHandle(ndata, client, networkID); break;

                case RequestTypes.GetRooms: GetRoomsHandler.DoHandle(ndata, client, networkID); break;

                case RequestTypes.CreateRoom: CreateRoomHandler.DoHandle(ndata, client, networkID); break;

                case RequestTypes.EnterInRoom: EnterInRoomHandler.DoHandle(ndata, client, networkID); break;

                case RequestTypes.StartMission: StartMissionHandler.DoHandle(ndata, client, networkID); break;

                case RequestTypes.LeaveRoom: LeaveRoomHandler.DoHandle(ndata, client, networkID); break;

                case RequestTypes.SyncRoom: ProjectKillersServer.RequestHandlers.SyncRoomHandler.DoHandle(ndata, client, networkID); break;
                }
            }
        }
Example #5
0
        private IList <ChatPayloadDTO> ProcessRequestCreateRoom(string userId, Message message)
        {
            IList <ChatPayloadDTO> result = new List <ChatPayloadDTO>();

            message.User = GetUserById(userId);

            message = new CreateRoomHandler(_userService, _roomService)
                      .Handle(userId, message);

            result.Add(message.MessageToPayload(userId));

            if (message.Event != EventEnum.Error)
            {
                Message newMessage = message.GenerateEventMessage(EventEnum.UpdateRoomList);
                newMessage.AvailableRooms = GetAllRooms();
                result.Add(newMessage.MessageToPayload(userId));
            }

            return(result);
        }