public static void ReviveWorker(IDbConnection dbConnection, WorkerHeartbeat request) { dbConnection.Update(new Worker { Id = request.Id, Address = request.Address, Alive = true, LastHeartbeat = DateTime.UtcNow }, w => w.Id == request.Id); }
void AddNewWorker(WorkerHeartbeat request) { var worker = new Worker() { Id = request.Id, Address = request.Address, Alive = true, LastHeartbeat = DateTime.UtcNow }; WorkerQueries.AddNewWorker(DBConnection, worker); }
public object Post(WorkerHeartbeat request) { try { RegisteringWorker.Register(request); } catch (BadRequestException) { return(new HttpError(HttpStatusCode.BadRequest, "BadRequest")); } return(new HttpResult(new WorkerHeartbeatResponse(), HttpStatusCode.Created)); }
public void Register(WorkerHeartbeat request) { if (Encrypt.EncryptToken(request.Time, request.Id, request.Address, request.Token)) { using (IDbTransaction transaction = DBConnection.OpenTransaction()) { if (!WorkerQueries.WorkerExists(DBConnection, request.Id)) { AddNewWorker(request); } else { Revive(request); } transaction.Commit(); } } else { throw new BadRequestException(); } }
void Revive(WorkerHeartbeat request) { WorkerQueries.ReviveWorker(DBConnection, request); }