Ejemplo n.º 1
0
        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 });
        }
Ejemplo n.º 2
0
		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);
		}