protected virtual bool RemoveServerRequest(Client client, RemoveServerRequest request) { client.SendRemoveServerReply(RemoveServerStatus.NotLeader, null); return true; }
public bool RemoveServerRequest(RemoveServerRequest request) { var client = _server.GetClient(request.From); return RemoveServerRequest(client, request); }
public async Task RemoveServer([FromBody] RemoveServerRequest request) { await _statisticsCounterController.RemoveServer(request.ServerAddress); }
protected override bool RemoveServerRequest(Client client, RemoveServerRequest request) { //System.Diagnostics.Debug.Assert(_server.Clients.Count(x => x.ID.Equals(request.From)) == 1); foreach (var c in _server.Clients) { if (c.ID.Equals(request.From)) { foreach (var cc in _serversToRemove) if (cc.ID.Equals(request.From)) return true; // already queued for removal // add to queue _serversToRemove.Add(client); return true; } } // client was in the server's list, this can happen if // the server to be removed never got the OK, send again client.SendRemoveServerReply(RemoveServerStatus.Ok, client.ID); return true; }
public void SendRemoveServerRequest() { Console.WriteLine("{0}: Sending remove server request to {1}", _server.Name, this.ID); var message = new RemoveServerRequest() { From = _server.ID, //EndPoint = new IPEndPoint(_server.Config.IP, _server.Config.Port) }; _lastMessage = message; _server.Transport.SendMessage(this, message); _rpcDue = _server.Tick + _server.PersistedStore.RPC_TIMEOUT; }