public override void AnnounceServer(string serverId, ServerContext context) { if (serverId == null) throw new ArgumentNullException("serverId"); if (context == null) throw new ArgumentNullException("context"); var data = new ServerDataDto { WorkerCount = context.WorkerCount, Queues = context.Queues, StartedAt = _database.GetServerTimeUtc(), }; _database.Server.UpdateManyAsync(Builders<ServerDto>.Filter.Eq(_ => _.Id, serverId), Builders<ServerDto>.Update.Combine(Builders<ServerDto>.Update.Set(_ => _.Data, JobHelper.ToJson(data)), Builders<ServerDto>.Update.Set(_ => _.LastHeartbeat, _database.GetServerTimeUtc())), new UpdateOptions { IsUpsert = true }); }
public void AnnounceServer(string serverId, ServerContext context) { if (serverId == null) throw new ArgumentNullException("serverId"); if (context == null) throw new ArgumentNullException("context"); var data = new ServerDataDto { WorkerCount = context.WorkerCount, Queues = context.Queues, StartedAt = _database.GetServerTimeUtc(), }; _database.Server.Update(Query<ServerDto>.EQ(_ => _.Id, serverId), Update.Combine(Update<ServerDto>.Set(_ => _.Data, JobHelper.ToJson(data)), Update<ServerDto>.Set(_ => _.LastHeartbeat, _database.GetServerTimeUtc())), UpdateFlags.Upsert); }