示例#1
0
 void ILookupService.RegisterUser(string username, string ip, int port)
 {
     Monitor.Enter(this);
     try
     {
         ClientMetadata client = new ClientMetadata();
         client.IP_Addr  = ip;
         client.Port     = port;
         client.Username = username;
         RegisterInfoOnAllServer(client);
         Log.Show(_username, "Registered client " + username + ": " + ip + ":" + port);
         pms.show("[REGISTER USER]" + _username + "-Registered client " + username + ": " + ip + ":" + port);
     }
     finally
     {
         Monitor.Exit(this);
     }
 }
示例#2
0
        public void Disconnect()
        {
            _monitorThread.Abort();
            _monitorThread = null;
            foreach (Reservation res in new List <Reservation>(_activeReservations.Values))
            {
                //I'm not the initiator
                if (res.InitiatorID != _userName)
                {
                    res.InitiatorStub.Disconnected(res.ReservationID, _userName);
                }
            }

            _pms.show("-------STATISTICS for " + _userName + "---------");
            _pms.show(
                " [MessageCount:" + _msgDispatcher.getMessageCount() + "]" +
                " [InitResCount:" + _msgDispatcher.getInitResCount() + "]" +
                " [BookSlotCount:" + _msgDispatcher.getBookSlotCount() + "]" +
                " [PreCommitCount:" + _msgDispatcher.getPreCommitCount() + "]" +
                " [DoCommitCount:" + _msgDispatcher.getDoCommitCount() + "]"
                );
            _pms.show(" ");
        }