Changeset 17575 for trunk/HeuristicLab.Services.Hive/3.3/HiveService.cs
- Timestamp:
- 05/29/20 13:31:30 (4 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/HeuristicLab.Services.Hive/3.3/HiveService.cs
r17376 r17575 209 209 } 210 210 211 private bool IsAuthorizedForTask(DA.Task task, Guid? slaveId) { 212 var lastStateLog = task.StateLogs.OrderByDescending(x => x.DateTime).FirstOrDefault(x => x.State == DA.TaskState.Transferring); 213 return lastStateLog == null || slaveId == null || lastStateLog.SlaveId == slaveId; 214 } 215 211 216 public DT.Task UpdateTaskState(Guid taskId, DT.TaskState taskState, Guid? slaveId, Guid? userId, string exception) { 212 217 RoleVerifier.AuthenticateForAnyRole(HiveRoles.Administrator, HiveRoles.Client, HiveRoles.Slave); … … 217 222 return pm.UseTransaction(() => { 218 223 var task = taskDao.GetById(taskId); 219 UpdateTaskState(pm, task, taskState, slaveId, userId, exception); 220 pm.SubmitChanges(); 224 if (IsAuthorizedForTask(task, slaveId)) { 225 UpdateTaskState(pm, task, taskState, slaveId, userId, exception); 226 pm.SubmitChanges(); 227 } 221 228 return task.ToDto(); 222 229 });
Note: See TracChangeset
for help on using the changeset viewer.