예제 #1
0
        //method with obtaining data from host algorithm
        private void ObtainData(Uri endpoint)
        {
            StartNewFactoryChannel(endpoint);
            GetRoomDetailsWhenJoiningRoomResponse response = ObtainHostDetailedData();

            SynchCont.Post(_ => DisplayObtainedDataInListView(response, endpoint), null);
        }
예제 #2
0
        //retrieving data from host
        private GetRoomDetailsWhenJoiningRoomResponse ObtainHostDetailedData()
        {
            IMakaoGameHostService proxy = factory.CreateChannel();
            GetRoomDetailsWhenJoiningRoomResponse response = proxy.GetHostRoomDetails();

            return(response);
        }
예제 #3
0
        //display data in the listViev
        private void DisplayObtainedDataInListView(GetRoomDetailsWhenJoiningRoomResponse response, Uri endpoint)
        {
            var logger = NLog.LogManager.GetCurrentClassLogger();

            logger.Info("Obtained data from host: Name - " + response.HostName + ", Room capacity - " +
                        response.RoomCapacity + ", Amount of players already in room - " + response.AmountOfPlayersInRoom +
                        ", Endpoint - " + endpoint);

            AddNewEndpointItemToListView(response.HostName, response.RoomCapacity, response.AmountOfPlayersInRoom,
                                         endpoint);
        }
        //read host information
        public static GetRoomDetailsWhenJoiningRoomResponse GetHostRoomDetails()
        {
            GetRoomDetailsWhenJoiningRoomResponse retVal = new GetRoomDetailsWhenJoiningRoomResponse();

            try
            {
                retVal.HostName = currentGameSetup.HostName;
                retVal.AmountOfPlayersInRoom = CurrentPlayersData.Count;
                retVal.RoomCapacity          = currentGameSetup.AmountOfPlayers;
            }
            catch (Exception ex)
            {
                var logger = NLog.LogManager.GetCurrentClassLogger();
                logger.Info("Couldn not get room detailed data when user was searching for active hosts. Exception: " + ex.Message);

                retVal.HostName = "Not assigned";
                retVal.AmountOfPlayersInRoom = 0;
                retVal.RoomCapacity          = 0;
            };

            return(retVal);
        }