public async Task <ApiResultLite> UpdateAsync(ReservationUpdateRequest request) { Reservation rv = await _context.Reservations.FindAsync(request.Id); if (rv == null) { return(new ApiErrorResultLite("Không tìm thấy")); } else { rv.Id = request.Id; rv.Paid = request.Paid; rv.Active = request.Active; rv.ReservationTypeId = request.ReservationTypeId; rv.UserId = request.UserId; rv.EmployeeId = request.EmployeeId; _context.Update(rv); int rs = await _context.SaveChangesAsync(); if (rs == 0) { return(new ApiErrorResultLite("Cập nhật thất bại")); } return(new ApiSuccessResultLite("Cập nhật thành công")); } }
public virtual void TestUpdateReservationExceedsGangSize() { ReservationUpdateRequest request = CreateSimpleReservationUpdateRequest(1, 1, 1, 5, 4); Org.Apache.Hadoop.Yarn.Api.Records.Resource resource = Org.Apache.Hadoop.Yarn.Api.Records.Resource .NewInstance(512, 1); Org.Mockito.Mockito.When(plan.GetTotalCapacity()).ThenReturn(resource); Plan plan = null; try { plan = rrValidator.ValidateReservationUpdateRequest(rSystem, request); NUnit.Framework.Assert.Fail(); } catch (YarnException e) { NUnit.Framework.Assert.IsNull(plan); string message = e.Message; NUnit.Framework.Assert.IsTrue(message.StartsWith("The size of the largest gang in the reservation refinition" )); NUnit.Framework.Assert.IsTrue(message.Contains("exceed the capacity available ")); Log.Info(message); } }
public async Task <IActionResult> Update(int id, [FromBody] ReservationUpdateRequest request) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } try { var userIdClaim = ((ClaimsIdentity)User.Identity).FindFirst(ClaimTypes.NameIdentifier); var userId = int.Parse(userIdClaim.Value); await _reservationsRepository.Update(id, request, userId); return(NoContent()); } catch (InvalidReservationException) { return(NotFound()); } catch (InvalidDeviceException) { string errorText = String.Format("Device with ID: {0} doesn't exist", request.DeviceId); return(StatusCode(StatusCodes.Status409Conflict, new { Message = errorText })); } catch (InvalidOfficeException) { string errorText = String.Format("Office with ID: {0} doesn't exist", request.OfficeId); return(StatusCode(StatusCodes.Status409Conflict, new { Message = errorText })); } }
/// <summary> /// Quick validation on the input to check some obvious fail conditions (fail /// fast) the input and returns the appropriate /// <see cref="Plan"/> /// associated with /// the specified /// <see cref="Org.Apache.Hadoop.Yarn.Server.Resourcemanager.Scheduler.Queue"/> /// or throws an exception message illustrating the /// details of any validation check failures /// </summary> /// <param name="reservationSystem"> /// the /// <see cref="ReservationSystem"/> /// to validate against /// </param> /// <param name="request"> /// the /// <see cref="Org.Apache.Hadoop.Yarn.Api.Protocolrecords.ReservationUpdateRequest"/> /// defining the resources /// required over time for the request /// </param> /// <returns> /// the /// <see cref="Plan"/> /// to submit the request to /// </returns> /// <exception cref="Org.Apache.Hadoop.Yarn.Exceptions.YarnException"/> public virtual Plan ValidateReservationUpdateRequest(ReservationSystem reservationSystem , ReservationUpdateRequest request) { ReservationId reservationId = request.GetReservationId(); Plan plan = ValidateReservation(reservationSystem, reservationId, RMAuditLogger.AuditConstants .UpdateReservationRequest); ValidateReservationDefinition(reservationId, request.GetReservationDefinition(), plan, RMAuditLogger.AuditConstants.UpdateReservationRequest); return(plan); }
/// <exception cref="Org.Apache.Hadoop.Yarn.Exceptions.YarnException"/> /// <exception cref="System.IO.IOException"/> public virtual ReservationUpdateResponse UpdateReservation(ReservationUpdateRequest request) { YarnServiceProtos.ReservationUpdateRequestProto requestProto = ((ReservationUpdateRequestPBImpl )request).GetProto(); try { return(new ReservationUpdateResponsePBImpl(proxy.UpdateReservation(null, requestProto ))); } catch (ServiceException e) { RPCUtil.UnwrapAndThrowException(e); return(null); } }
public virtual void TestUpdateReservationNormal() { ReservationUpdateRequest request = CreateSimpleReservationUpdateRequest(1, 1, 1, 5, 3); Plan plan = null; try { plan = rrValidator.ValidateReservationUpdateRequest(rSystem, request); } catch (YarnException e) { NUnit.Framework.Assert.Fail(e.Message); } NUnit.Framework.Assert.IsNotNull(plan); }
public virtual void TestUpdateReservationInvalidDuration() { ReservationUpdateRequest request = CreateSimpleReservationUpdateRequest(1, 1, 1, 3, 4); Plan plan = null; try { plan = rrValidator.ValidateReservationUpdateRequest(rSystem, request); NUnit.Framework.Assert.Fail(); } catch (YarnException e) { NUnit.Framework.Assert.IsNull(plan); string message = e.Message; NUnit.Framework.Assert.IsTrue(message.Contains("must be greater or equal to the minimum resource duration" )); Log.Info(message); } }
public virtual void TestUpdateReservationEmptyRR() { ReservationUpdateRequest request = CreateSimpleReservationUpdateRequest(1, 0, 1, 5, 3); Plan plan = null; try { plan = rrValidator.ValidateReservationUpdateRequest(rSystem, request); NUnit.Framework.Assert.Fail(); } catch (YarnException e) { NUnit.Framework.Assert.IsNull(plan); string message = e.Message; NUnit.Framework.Assert.IsTrue(message.StartsWith("No resources have been specified to reserve" )); Log.Info(message); } }
public virtual void TestUpdateReservationInvalidDeadline() { ReservationUpdateRequest request = CreateSimpleReservationUpdateRequest(1, 1, 1, 0, 3); Plan plan = null; try { plan = rrValidator.ValidateReservationUpdateRequest(rSystem, request); NUnit.Framework.Assert.Fail(); } catch (YarnException e) { NUnit.Framework.Assert.IsNull(plan); string message = e.Message; NUnit.Framework.Assert.IsTrue(message.StartsWith("The specified deadline: 0 is the past" )); Log.Info(message); } }
public virtual void TestUpdateReservationInvalidPlan() { ReservationUpdateRequest request = CreateSimpleReservationUpdateRequest(1, 1, 1, 5, 4); Org.Mockito.Mockito.When(rSystem.GetPlan(PlanName)).ThenReturn(null); Plan plan = null; try { plan = rrValidator.ValidateReservationUpdateRequest(rSystem, request); NUnit.Framework.Assert.Fail(); } catch (YarnException e) { NUnit.Framework.Assert.IsNull(plan); string message = e.Message; NUnit.Framework.Assert.IsTrue(message.EndsWith(" is not associated with any valid plan. Please try again with a valid reservation." )); Log.Info(message); } }
public virtual void TestUpdateReservationDoesnotExist() { ReservationUpdateRequest request = CreateSimpleReservationUpdateRequest(1, 1, 1, 5, 4); ReservationId rId = request.GetReservationId(); Org.Mockito.Mockito.When(rSystem.GetQueueForReservation(rId)).ThenReturn(null); Plan plan = null; try { plan = rrValidator.ValidateReservationUpdateRequest(rSystem, request); NUnit.Framework.Assert.Fail(); } catch (YarnException e) { NUnit.Framework.Assert.IsNull(plan); string message = e.Message; NUnit.Framework.Assert.IsTrue(message.Equals(MessageFormat.Format("The specified reservation with ID: {0} is unknown. Please try again with a valid reservation." , rId))); Log.Info(message); } }
public async Task Update(int id, ReservationUpdateRequest request, int userId) { var item = await _dbContext.Reservations .FirstOrDefaultAsync(x => x.Id == id); if (item == null) { throw new InvalidReservationException(); } var device = await _dbContext.Devices .FirstOrDefaultAsync(x => x.Id == request.DeviceId); if (device == null) { throw new InvalidDeviceException(); } Action eventAction = Action.ReservationCanceled; int officeId = device.OfficeId; if (request.Status == Status.CheckedIn) { device.UserId = userId; device.Available = false; eventAction = Action.CheckedIn; } if (request.Status == Status.Completed) { var office = await _dbContext.Offices .AsNoTracking() .FirstOrDefaultAsync(x => x.Id == request.OfficeId); if (office == null) { throw new InvalidOfficeException(); } eventAction = item.Status == Status.OverDue ? Action.ReturnedLate : Action.Returned; officeId = office.Id; device.UserId = null; device.Available = true; device.OfficeId = request.OfficeId.Value; } await _dbContext.Events.AddAsync(new Event { Action = eventAction, OfficeId = officeId, UserId = userId, CreatedOn = DateTime.UtcNow, DeviceId = request.DeviceId, }); item.Status = request.Status; item.DeviceId = device.Id; item.UserId = userId; item.From = request.From; item.To = request.To; await _dbContext.SaveChangesAsync(); }
public async Task <ApiResultLite> UpdateAsync(ReservationUpdateRequest request) { return(await PostAsync <ApiResultLite>("/api/Reservation/Update", request)); }
/// <exception cref="Org.Apache.Hadoop.Yarn.Exceptions.YarnException"/> /// <exception cref="System.IO.IOException"/> public virtual ReservationUpdateResponse UpdateReservation(ReservationUpdateRequest request) { return(null); }
public async Task <ApiResultLite> UpdateAsync(ReservationUpdateRequest request) { var result = await _reservationService.UpdateAsync(request); return(result); }
/// <exception cref="Org.Apache.Hadoop.Yarn.Exceptions.YarnException"/> /// <exception cref="System.IO.IOException"/> public override ReservationUpdateResponse UpdateReservation(ReservationUpdateRequest request) { return(rmClient.UpdateReservation(request)); }
public abstract ReservationUpdateResponse UpdateReservation(ReservationUpdateRequest request);