Пример #1
0
        public void TestGetMachinePlayerCount_NoMasterServer()
        {
            AddTestMachineInfo();

            int nPlayerCount = m_machineInfoMgr.GetMachinePlayerCount(TEST_MACHINE_NAME1);

            Assert.AreEqual(0, nPlayerCount);

            ServerInfoMgr serverInfoMgr = m_machineInfoMgr.GetServerInfoMgr(TEST_MACHINE_NAME1);

            TRANS_SERVERLISTNODE serverListNode1 = new TRANS_SERVERLISTNODE();

            serverListNode1.strServerName = TEST_SERVER_NAME1;
            serverListNode1.nWorldID      = 5000;
            serverListNode1.nServerID     = 1;
            serverListNode1.nServerType   = (byte)SERVER_TYPE.SERVER_GAME;

            TRANS_SERVERLISTNODE serverListNode2 = new TRANS_SERVERLISTNODE();

            serverListNode2.strServerName = TEST_SERVER_NAME2;
            serverListNode2.nWorldID      = 5000;
            serverListNode2.nServerID     = 2;
            serverListNode2.nServerType   = (byte)SERVER_TYPE.SERVER_GAME;

            serverInfoMgr.AddServerInfo(ref serverListNode1);
            serverInfoMgr.AddServerInfo(ref serverListNode2);

            serverInfoMgr.SetServerCurServerPlayerCount(TEST_SERVER_NAME1, 1);
            serverInfoMgr.SetServerCurServerPlayerCount(TEST_SERVER_NAME2, 1);

            nPlayerCount = m_machineInfoMgr.GetMachinePlayerCount(TEST_MACHINE_NAME1);
            Assert.AreEqual(2, nPlayerCount);
        }
Пример #2
0
        public bool AddServerInfo(ref TRANS_SERVERLISTNODE refServerListNode)
        {
            ServerInfo serverInfo = new ServerInfo();

            serverInfo.SetName(refServerListNode.strServerName);
            serverInfo.SetServerType((SERVER_TYPE)refServerListNode.nServerType);
            serverInfo.WorldID  = refServerListNode.nWorldID;
            serverInfo.ServerID = refServerListNode.nServerID;
            m_listServerInfo.AddLast(serverInfo);
            return(true);
        }
Пример #3
0
        public bool OnGetServerListReq(NetCommand command)
        {
            TRANS_SERVERLISTNODE[] arrServerListNode = new TRANS_SERVERLISTNODE[m_refServerMonitor.refServerInfoMgr.ServerInfoCount];
            m_refServerMonitor.refServerInfoMgr.GetTRANS_SERVERLISTNODE(ref arrServerListNode);

            if (m_refCommandSender.SendGetServerListRes(command.SessionID, ref arrServerListNode) == false)
            {
                return(false);
            }

            return(true);
        }
Пример #4
0
        private bool OnGetServerListRes(NetCommand command)
        {
            byte nServerCount;

            if (command.ReadByte(out nServerCount) == false)
            {
                return(false);
            }

            TRANS_SERVERLISTNODE[] arrServerListNode = new TRANS_SERVERLISTNODE[nServerCount];
            for (int i = 0; i < nServerCount; ++i)
            {
                if (command.ReadString(out arrServerListNode[i].strServerName) == false)
                {
                    return(false);
                }
                if (command.ReadByte(out arrServerListNode[i].nServerType) == false)
                {
                    return(false);
                }
                if (command.ReadInt32(out arrServerListNode[i].nWorldID) == false)
                {
                    return(false);
                }
                if (command.ReadInt32(out arrServerListNode[i].nServerID) == false)
                {
                    return(false);
                }
            }

            UInt64 nSessionID = command.SessionID;

            MachineInfo refMachineInfo = m_refServerMonitorClient.refMachineInfoMgr.Find(nSessionID);

            if (null == refMachineInfo)
            {
                return(false);
            }

            m_refServerMonitorClient.ClearServerInfo(refMachineInfo.GetName());
            for (int i = 0; i < nServerCount; ++i)
            {
                m_refServerMonitorClient.AddServerInfo(refMachineInfo.GetName(), ref arrServerListNode[i]);
            }


            ServerInfoMgr refServerInfoMgr = m_refServerMonitorClient.refMachineInfoMgr.GetServerInfoMgr(refMachineInfo.GetName());

            string[] arrServerNames;
            refServerInfoMgr.GetAllServerName(out arrServerNames);
            m_refCommandSender.SendRequestServerInfo(nSessionID, arrServerNames);
            return(true);
        }
Пример #5
0
        public void AddServerInfo(string strMachineName, ref TRANS_SERVERLISTNODE refServerListNode)
        {
            ServerInfoMgr refServerInfoMgr = m_machineInfoMgr.GetServerInfoMgr(strMachineName);

            if (refServerInfoMgr == null)
            {
                return;
            }

            refServerInfoMgr.AddServerInfo(ref refServerListNode);

            m_refView.refTreeViewCntroller.AddServerNode(strMachineName,
                                                         refServerListNode.strServerName);
        }
Пример #6
0
        public void RefreshServerList()
        {
            m_updaterServerListView.BuildServerListView();

            TRANS_SERVERLISTNODE[] arrServerListNode = new TRANS_SERVERLISTNODE[m_serverInfoMgr.ServerInfoCount];
            m_serverInfoMgr.GetTRANS_SERVERLISTNODE(ref arrServerListNode);

            UInt64[] arrSessionID;
            m_serverMonitorClientMgr.GetAllSessionID(out arrSessionID);

            for (int i = 0; i < arrSessionID.Length; ++i)
            {
                m_netServer.commandSender.SendGetServerListRes(arrSessionID[i], ref arrServerListNode);
            }
        }
Пример #7
0
        private void InitTestMachineInfo()
        {
            m_refMachineInfo             = new MachineInfo();
            m_refMachineInfo.MachineName = TEST_MACHINE_NAME1;
            m_refMachineInfo.IP          = TEST_MACHINE_IP1;
            m_refMachineInfo.Port        = TEST_MACHINE_PORT1;

            MachineInfo[] arrMachineInfo = { m_refMachineInfo };

            m_machineInfoMgr.AddMachineInfo(arrMachineInfo);
            m_refMachineInfo.SetConnected();


            TRANS_SERVERLISTNODE m_ServerListNode;

            m_ServerListNode = new TRANS_SERVERLISTNODE();
            m_ServerListNode.strServerName = TEST_SERVER_NAME1;
            m_refMachineInfo.ServerInfoMgr.AddServerInfo(ref m_ServerListNode);
            m_refServerInfo = m_refMachineInfo.ServerInfoMgr.Find(TEST_SERVER_NAME1);
        }